[HELP]JASS permanent error

FoxWizzy

New Member
Reaction score
3
Hello i am new to jass and have a big prob.
All the triggers i make have the same error and i cant run them

E.X.
Code:
set gg_trg_test = CreateTrigger()

ERROR : 
Undeclared Variable gg_trg_test
this an example but all the triggers i make have the same error.:banghead:
 

Darthfett

Aerospace/Cybersecurity Software Engineer
Reaction score
615
The reason you are getting an error, is because you renamed your trigger.

gg_trg_TRIGGER_NAME_GOES_HERE is a global trigger variable automatically created, but it changes when you change the name of your trigger. Apparently your original trigger was called 'test', but when you renamed it, you didn't replace gg_trg_test with gg_trg_NEW_TRIGGER_NAME.

Easiest way is to just replace it with a local trigger variable so you don't have to worry about your triggers changing names, like so:

JASS:
function NAME takes nothing returns nothing
    local trigger t = CreateTrigger()
    call TriggerRegister...(t,..)
    call TriggerAddCondition(t,..)
    call TriggerAddAction(t, function..)
endfunction


Depending on whether or not you're using vJass libraries/scopes, you may also need to change the name of the function to InitTrig_NEW_TRIGGER_NAME, I suspect it is currently InitTrig_test. If you are not using vJass scopes/libraries, your new function will not be automatically run at Initialization unless you change the name.
 

Komaqtion

You can change this now in User CP.
Reaction score
469
Well, tyhat is not really needed... (I suspect you are using the manual "Syntax Checker" which is in JASS Newgen Pack ? :S)

You shouldn't use that, just simply save the map, and if no errors occur, then you're good ;)
 

FoxWizzy

New Member
Reaction score
3
I have another prob :(
In jass craft all is OK now but when i insert the cod in WE in the Custom Script i get Expected End Of line

this is the cod i am trying :
Code:
globals
    trigger gg_trg_map_start
endglobals

function Trig_map_start_Action takes nothing returns nothing
    call FogEnableOff()
    call FogMaskEnableOff()
endfunction

//=========================================================
function InitTrig_map_start takes nothing returns nothing
    set gg_trg_map_start = CreateTrigger()
    call TriggerAddAction(gg_trg_map_start,function Trig_map_start_Action)
endfunction
I posted an ss of the error

Well, tyhat is not really needed... (I suspect you are using the manual "Syntax Checker" which is in JASS Newgen Pack ? :S)

You shouldn't use that, just simply save the map, and if no errors occur, then you're good ;)

I am using the normal Jass Craft and normal WE
 

Attachments

  • 223.JPG
    223.JPG
    97.7 KB · Views: 216

Darthfett

Aerospace/Cybersecurity Software Engineer
Reaction score
615
First of all, if you're planning on working with JASS, getting Newgen is highly recommended.

Second of all, globals blocks (globals ... endglobals) are only possible with vJass, which can only be used with a vJass precompiler, such as JassHelper (which is included with Newgen).

Third, if you're insistent on coding without Newgen, coding in an external program, such as JASSCraft (which contains a syntax checker) is also recommended, as the default syntax checker is known to be very buggy and prone to crashes.

Fourth, you placed your trigger-code inside the map header. In order for code to be automatically run at initialization in JASS, it MUST be placed inside a Init function, which MUST be located inside a trigger.

Here's what you should do if you just want to get your trigger working:

1. Create a trigger, and go to Edit -> Convert to Custom Text
2. Give your trigger a name.
3. Delete all the code, and paste in the following:

JASS:
function Trig_map_start_Action takes nothing returns nothing
    call FogEnableOff()
    call FogMaskEnableOff()
endfunction

//=========================================================
function InitTrig_map_start takes nothing returns nothing
    local trigger t = CreateTrigger()
    call TriggerAddAction(t,function Trig_map_start_Action)
endfunction


4. Change the name of InitTrig_map_start to InitTrig_NAME_OF_TRIGGER. If it is "map start" already, don't bother. :p

There are many JASS tutorials in our Tutorial Repository, and I recommend you look through a few so you understand what is required for JASS, and how to do more with it.
 

FoxWizzy

New Member
Reaction score
3
Can i create 1 trigger E.X. start and add any number on triggers in it? or do i have to create new trig sep.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top