cloudee1 |
O.k. I have been gone awhile and my game in progress has decided to allude me as well so I start again from scratch, but heres my situation. I have been busy scripting away at my kitchen there are two drawers three cabinets a stove a refrigerator and freezer. I can currently open the refrigerator and freezer but I cannot seem to get the animation to work for opening anything else, it displays all correct print phrases, but the pictures won't change, are there a set number of operable Doors or is the problem in my scripting. Each of the different doors has 2 cels closed and open. (instance public rm002 of Rm (properties picture scriptNumber north 0 east 0 south 1 west 0) (method (init) (super:init()) (self:setScript(RoomScript)) (switch(gPreviousRoomNumber) (case south(send gEgo: posn(136 140) loop(3))) ) /*end of switch*/ SetUpEgo() (send gEgo:init()) (if(not (send gEgo:has(INV_TRAP))) (theTrap:init())) (if(not (send gEgo:has(INV_NOTE))) (theNote:init()setPri(9)ignoreActors())) (if(not (send gEgo:has(INV_SODA))) (theSoda:init())) (aDoor:init()setPri(10)) (bDoor:init()setPri(10)) (cDoor:init()) (dDoor:init()) (eDoor:init()) (fDoor:init()) (gDoor:init()) (hDoor:init()) (theDrip:init()setCycle(Fwd)) ) /*end of method*/ ) /*end of instance*/ ---------------------------------------------------------------------- (if(Said('open/cabinet')) (if(== (send gEgo:onControl()) ctlLIME) (eDoor:open()) Print("Tah Dah!")) (else(if(== (send gEgo:onControl()) ctlGREEN) (gDoor:open())(fDoor:open()) Print("Tah Dah!")) (else Print("Need to move closer!")) )) (if(Said('close/cabinet')) (if(== (send gEgo:onControl()) ctlLIME) (eDoor:close()) Print("Tah Dah!")) (else(if(== (send gEgo:onControl()) ctlGREEN) (gDoor:close())(fDoor:close()) Print("Tah Dah!")) (else Print("Need to move closer!")) )) (if(Said('open/drawer')) (if(== (send gEgo:onControl()) ctlLIME) (cDoor:open()) Print("Tah Dah!")) (else(if(== (send gEgo:onControl()) ctlBLUE) (dDoor:open()) Print("Tah Dah!")) (else Print("Need to move closer!")) )) (if(Said('close/drawer')) (if(== (send gEgo:onControl()) ctlLIME) (cDoor:close()) Print("Tah Dah!")) (else(if(== (send gEgo:onControl()) ctlBLUE) (dDoor:close()) Print("Tah Dah!")) (else Print("Need to move closer!")) )) (if(Said('open/oven')) (if(== (send gEgo:onControl()) ctlBLUE) (hDoor:open()) Print("Tah Dah!")) (else Print("Need to move closer!")) ) (if(Said('close/oven')) (if(== (send gEgo:onControl()) ctlBLUE) (hDoor:close()) Print("Tah Dah!")) (else Print("Maybe I should get closer!")) ) (if(Said('open/fridge')) (if(== (send gEgo:onControl()) ctlNAVY) (aDoor:open()) Print("Tah Dah!")) (else Print("Need to move closer!")) ) (if(Said('close/fridge')) (if(== (send gEgo:onControl()) ctlNAVY) (aDoor:close()) Print("Tah Dah!")) (else Print("Maybe I should get closer!")) ) (if(Said('open/freezer')) (if(== (send gEgo:onControl()) ctlNAVY) (bDoor:open()) Print("Tah Dah!")) (else Print("Can't quite reach from here!")) ) (if(Said('close/freezer')) (if(== (send gEgo:onControl()) ctlNAVY) (bDoor:close()) Print("Tah Dah!")) (else Print("Maybe I should get closer!")) ) ------------------------------------------------------------------ (instance theNote of Prop (properties y 103 x 50 view 707)) (instance aDoor of Door (properties y 133 x 68 view 850)) (instance bDoor of Door (properties y 103 x 68 view 851)) (instance cDoor of Door (properties y 111 x 78 view 852)) (instance dDoor of Door (properties y 111 x 225 view 852)) (instance eDoor of Door (properties y 111 x 106 view 853)) (instance fDoor of Door (properties y 111 x 166 view 853)) (instance gDoor of Door (properties y 111 x 138 view 854)) (instance hDoor of Door (properties y 111 x 198 view 855)) (instance theDrip of Prop (properties y 93 x 146 view 801)) (instance theSoda of Prop (properties y 107 x 64 view 709)) (instance theTrap of Prop (properties y 100 x 100 view 815)) |
cloudee1 |
Ok through a little bit of reworking I have gotten all of these "doors" to work. For information purposes I accomplished this by changing them to Props and then instead of open or close i set the cycler to end and ct example: (if(Said('open/cabinet')) (if(== (send gEgo:onControl()) ctlLIME) (eDoor:setCycle(End)) Print("Tah Dah!")) (else(if(== (send gEgo:onControl()) ctlGREEN) (gDoor:setCycle(End))(fDoor:setCycle(End)) Print("Tah Dah!")) (else Print("Need to move closer!")) )) For my own knowledge did this not working before have anything to do with the default door control color, as that is my best guess. |