custom scripts...

13lade619

is now a game developer :)
Reaction score
399
hi, it's my first post here in the jass zone and i am yet to learn jass... i'm still gui...

anyways, my question is this:

as we all know, gui is translated jass but some jass functions were not converted.
so can you guys give me a list of some "usefull" / "important" custom scirpts? (untranslated jass lines/functions)

-
thehelperTripleAnimatedUB.gif
 

Arkan

Nobody rides for free
Reaction score
92
call RemoveLocation() and call DestroyGroup() are the most useful ones to get rid of leaks. Other than that I don't know.
 

Doomhammer

Bob Kotick - Gamers' corporate spoilsport No. 1
Reaction score
67
I don't know what exactly you're asking for.
There is a large amount of Jass functions 'not translated' to GUI.

The question whether a custom script is "useful" or "important" is finally up to you to answer, because it is oriented to your current 'problem', i.e. what you want to achieve.
If you want to learn Jass, and I really recommend you to for all the benefits of it and all the great accomplishments by the mapping community, then find sth that you'd like to create, e.g. a spell, or a custom map. Start with GUI, because that's what you know. Then convert it to custom script and post it here, asking what can be improved. Read some of the GUI-JASS tutorials, the leak-free tutorials are important as well, and not too hard for the beginning.

Edit: if you're looking for a collection of scripts, there are plenty of them in the scripts and tutorial section
http://www.thehelper.net/forums/forumdisplay.php?f=131

If that's not enough, check out vexorian's caster system, which also includes CSCache
 

denmax

You can change this now in User CP.
Reaction score
155
Well, the memory leaks are, and I think the local bug is too.

But the one you are requesting is quite hard, as we don't know what is useful for you.

Example:
GetTriggerUnit() means to get the Triggering Unit (duh, you can read it)

Anyway, the only tip I can give you in reading is, making it to a better grammared text. Such as

JASS:
constant function TEXT takes nothing returns nothing
....
if bool = true
....
elseif
....
endif
endfunction


So in English, that would be:

The constant function/trigger TEXT, will take nothing and returns nothing
Then, if the boolean is true then ....
If the condition is not true, then ....
After this, the If/Then/Else actions will be ended
After this, the function may end.

And of course, you do know what constant means, right? In fact, you are excellent in school.

Of course, that would lead to reading but not to know how to type because it's reading, not knowing.

EDIT: I think, being a constant func, indents wouldn't be added, but I am not sure, I'm no JASS expert..
 

Andrewgosu

The Silent Pandaren Helper
Reaction score
716
Wouldn't the intentionally "not converted" JASS scripts be dangerous in the hands of someone "yet to learn jass"? :rolleyes:

I suggest you to grasp the basics of JASS, first.
 

denmax

You can change this now in User CP.
Reaction score
155
Just not to waste posts in the JASS forum, I may post just one question here

JASS:
if GetIssuedOrderId() == 851976 and GetUnitUserData(GetTriggerUnit()) == 1 then


Now, 851976 command is Cancel Training.

Now, how do I get that raw code (or is it)?

PS: Acehart contributed it, thank again sir..
 

SFilip

Gone but not forgotten
Reaction score
634
Code:
Order
    Events
        Unit - A unit Is issued an order targeting an object
        Unit - A unit Is issued an order targeting a point
        Unit - A unit Is issued an order with no target
    Conditions
    Actions
        Custom script:   call BJDebugMsg(I2S(GetIssuedOrderId()))
Will show you the id (numerical) of the order after you issue it.
 

Sooda

Diversity enchants
Reaction score
318
Most useful could be:
JASS:
exitwhen true

that would exit from loop instantly and carry on actions what comes after loop. In GUI you can' t just exit from loop without "exiting" from trigger itself.
When you learn more JASS you will find out that that command is like boolean if something is true it will exit from loop. It could also be:
JASS:
exitwhen udg_myRandomBoolean

All other things are already pure (native) JASS combinations.
You can create custom loops too with:
JASS:
loop

JASS:
endloop

but it isn' t so easy when mixing with GUI.
 

waaaks!

Zinctified
Reaction score
255
Custom script: local unit u = GetTriggerUnit()

that creates a unit variable with the title 'u' and the value triggering unit
 

Hero

─║╣ero─
Reaction score
250
well the loop system in jass is much better

JASS:

function blah takes nothing returns nothing
    local integer i=0
loop
exitwhen i>9
set i=i+1
endloop
endfunction


locals are a major advantage of JASS

JASS:
local unit u=GetTriggerUnit()
local location point=GetSpellTargetLoc()
//..and much more


JASS:

call RemoveLocation()
call DestroyGroup()
call DestroyBoolexpr() //this may be dangerous since vexorian's testings


Theres also bj_wantdestroygroup

Read some tutorials ^^
 

elmstfreddie

The Finglonger
Reaction score
203
locals are the most useful but anything that uses a local in it requires custom script :)

JASS:
local variabletype variablename


JASS:
call SetUnitX(unit,Xcoordinate)
call SetUnitY(unit,Ycoordinate)

That's better for sliding because your dude still has control I think unlike setunitloc (move unit instantly)
 

PurgeandFire

zxcvmkgdfg
Reaction score
509
There is also "GetTriggerUnit()"...

BJDebugMsg("txt") is very important... It is a great method of testing.

Global blocks are also usefull, but require vJASS. I suggest reading Vex's or Ghan's or Daelin's or Emjlr3's or Wyrmlord's JASS tutorial. Yes, there are that many JASS tutorials.

:D
 

PurgeandFire

zxcvmkgdfg
Reaction score
509
About BJDebugMsg what does it do? I've never used it!

Same thing Ghan said. Well, BJDebugMsg displays text. It is good for testing like if you were to use an If. To test if the "IF" actually worked you can add "BJDebugMsg". It displays text.... I guess you could do an alternative thing but still, many people use it for testing. :D
 

WarLuvr3393

Hmmm...too many things to play (WoW, COD4, WC3)
Reaction score
54
Get "NewGen World Editor", has a lot of new stuff and allows you to use Vexorian's Caster System. Also has a syntax checker which doesn't crash your WE if you have a fatal error. Most JASS'ers have this. Also, JASSCraft is a great program to get started with.
 

denmax

You can change this now in User CP.
Reaction score
155
You should know that JASS programs already give you some codes or you can write for yourself, so why bother asking what is needed if you can read it anyway?

Also, that would depend on your JASS program

JASS:
native
library
local
call
set
null
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top