Array of Structs, How To Acess

rover2341

Is riding a roller coaster...Wee!
Reaction score
113
SOVLED

Question: This prints out 5 , twice. Any Idea What I am Doing wrong?

Answer: I wasn't creating instances of the tracks, correctly.

JASS:
 //What Was Changed
           
           //Old
               //call r.myTracks[0].create()
               //call r.myTracks[1].create()
           //New          
               set r.myTracks[0] = r.myTracks[0].create()
               set r.myTracks[1] = r.myTracks[1].create()

JASS:
struct Track
        public integer x
        
        static method create takes nothing returns thistype 
        local thistype r = thistype.allocate()                     
            set r.x = 0

            return r
        endmethod
endstruct

struct Cart
    public integer x
endstruct

struct Rollercoaster
    Track array myTracks[1000]
    Cart array myCarts[8]
    integer y
    static method create takes nothing returns thistype 
        local thistype r = thistype.allocate()          
           //What Was Changed
           
           //Old
               //call r.myTracks[0].create()
               //call r.myTracks[1].create()
           //New          
               set r.myTracks[0] = r.myTracks[0].create()
               set r.myTracks[1] = r.myTracks[1].create()
            
            set r.y = 20

            return r
        endmethod
endstruct


JASS:
function CreateArrayOfPlayersLotsOfTracks takes nothing returns nothing
    
    local Rollercoaster array myPlayer
    
    call myPlayer[0].create()

    set myPlayer[0].myTracks[0].x = 10
    set myPlayer[0].myTracks[1].x = 5
    
    call DisplayTextToPlayer(GetLocalPlayer(), 0, 0, I2S(myPlayer[0].myTracks[0].x))
    call DisplayTextToPlayer(GetLocalPlayer(), 0, 0, I2S(myPlayer[0].myTracks[1].x))


endfunction


//===========================================================================
scope SetupGame initializer InitA 
    
    function  InitA takes nothing returns nothing
        
        call CreateArrayOfPlayersLotsOfTracks()
    endfunction
    
endscope


SOVLED
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top