Somebody can teach me to jass? i need patience

Doom-Angel

Jass User (Just started using NewGen)
Reaction score
167
well if u are player 1 then it won't run since u didn't add any event for player 1....
u add 1 to index before adding the event so u finish with event for all players from number 1 to 8 (remember that 1 is blue and 8 is grey i think)
so try setting index after u add the event and not be4 it like this:
JASS:
    local integer index = 0
    set gg_trg_Buy_Good_Point = CreateTrigger(  )
    loop
        call TriggerRegisterPlayerUnitEvent(gg_trg_Buy_Good_Point, Player(index), EVENT_PLAYER_UNIT_SELL_ITEM, null)
        set index = index + 1
        exitwhen index == 8
    endloop
 
S

shadowvzs

Guest
well if u are player 1 then it won't run since u didn't add any event for player 1....
u add 1 to index before adding the event so u finish with event for all players from number 1 to 8 (remember that 1 is blue and 8 is grey i think)
so try setting index after u add the event and not be4 it like this:
JASS:
    local integer index = 0
    set gg_trg_Buy_Good_Point = CreateTrigger(  )
    loop
        call TriggerRegisterPlayerUnitEvent(gg_trg_Buy_Good_Point, Player(index), EVENT_PLAYER_UNIT_SELL_ITEM, null)
        set index = index + 1
        exitwhen index == 8
    endloop

i understand what u mean but i tryed ur solution and same nothing :/
JASS:
function Trig_Buy_Good_Point_Conditions takes nothing returns boolean
    return (GetItemTypeId(GetSoldItem()) == 'I01B' )
endfunction

function Trig_Buy_Good_Point_Actions takes nothing returns nothing
    local integer i = GetPlayerId(GetOwningPlayer(GetBuyingUnit()))
    local multiboarditem mbitem 
    call DisplayTextToForce( GetPlayersAll(), "77777777777" )
    set udg_GoodBadPoints<i> = ( udg_GoodBadPoints<i> + 1 )
                    set mbitem = MultiboardGetItem(GetLastCreatedMultiboard(), i - 1, 3 - 1)
                    call MultiboardSetItemValue(mbitem, R2S(udg_GoodBadPoints<i>))
                    call MultiboardReleaseItem(mbitem)
set mbitem = null

endfunction

//===========================================================================
function InitTrig_Buy_Good_Point takes nothing returns nothing
    local integer index = 0
    set gg_trg_Buy_Good_Point = CreateTrigger(  )
    loop
    call TriggerRegisterPlayerUnitEvent(gg_trg_Buy_Good_Point, Player(index), EVENT_PLAYER_UNIT_SELL_ITEM, null)
    set index = index + 1
    exitwhen index == 8
    endloop
    call TriggerAddCondition( gg_trg_Buy_Good_Point, Condition( function Trig_Buy_Good_Point_Conditions ) )
    call TriggerAddAction( gg_trg_Buy_Good_Point, function Trig_Buy_Good_Point_Actions )
endfunction</i></i></i>
dont write me 777777777 => dont fired the trigger action

somebody can try with other item?
 

Doom-Angel

Jass User (Just started using NewGen)
Reaction score
167
try removing the condition and see if it right a text if not still then try using the AnyUnitBJ as well (check them one by 1) and then u will find where ur problme is at.
 
S

shadowvzs

Guest
try removing the condition and see if it right a text if not still then try using the AnyUnitBJ as well (check them one by 1) and then u will find where ur problme is at.

this work:
JASS:
function InitTrig_Untitled_Trigger_003 takes nothing returns nothing
set gg_trg_Untitled_Trigger_003 = CreateTrigger(  )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Untitled_Trigger_003, EVENT_PLAYER_UNIT_SELL_ITEM )
call TriggerAddCondition( gg_trg_Untitled_Trigger_003, Condition( function Trig_Untitled_Trigger_003_Conditions ) )
call TriggerAddAction( gg_trg_Untitled_Trigger_003, function Trig_Untitled_Trigger_003_Actions )
endfunction


this no
JASS:

function InitTrig_Untitled_Trigger_003 takes nothing returns nothing
 local integer index
    set gg_trg_Untitled_Trigger_003 = CreateTrigger(  )
loop
        call TriggerRegisterPlayerUnitEvent(gg_trg_Untitled_Trigger_003, Player(index), EVENT_PLAYER_UNIT_SELL_ITEM, null)

        set index = index + 1
        exitwhen index == 8
    endloop
    call TriggerAddCondition( gg_trg_Untitled_Trigger_003, Condition( function Trig_Untitled_Trigger_003_Conditions ) )
    call TriggerAddAction( gg_trg_Untitled_Trigger_003, function Trig_Untitled_Trigger_003_Actions )
endfunction


and we not found error
 
S

shadowvzs

Guest
well this is wierd but why don't u try:
JASS:
exitwhen index == bj_MAX_PLAYER_SLOTS

btw does it work with the condition or without?

i tryed with condition, yes i know u said i try without condition but indifferent condition line in this problem, it's sure, i dont have only 8 player.... but i will try
but bj is again 1 function :/


[Edit] i tryed without condition and with bj max player but dont fired the action :/

i will resolve without converting bj inside the event but i dont know why dont work if change with i found in jass craft :/


this jass is good?

HTML:
function Trig_Battle_Actions takes nothing returns nothing
    local integer i = 0
    local group g = CreateGroup()
    local location loc
    local effect e
    local unit u
    set g = (GetUnitsOfPlayerAndTypeId(Player(11), 'H007'))
    set u = GroupPickRandomUnit(g)
    loop
        exitwhen i > 10
        set loc = GetRandomLocInRect(gg_rct_LichKingBase)
        set e = AddSpecialEffectLoc( "Abilities\\Spells\\Undead\\RaiseSkeletonWarrior\\RaiseSkeleton.mdl", loc )
        call DestroyEffect(e)
        call CreateNUnitsAtLoc( 1, 'nsoc', Player(9), udg_Temp_point[3], 270 )
        call RemoveLocation(loc)
        call IssueTargetOrder( GetLastCreatedUnit(), "attack", u )
    set i = i + 1
    endloop
set e = null
set loc = null
set u = null
set g = null
endfunction
 
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