//////////////////////////////////////////////////////////////////////////////// // dr_rd_chasmop - Door from Chasm leading to Random Dungeon. // By Deva B. Winblood. November 15th, 2008. //////////////////////////////////////////////////////////////////////////////// void main() { object oMe=OBJECT_SELF; object oPC=GetLastUsedBy(); int nState=GetLocalInt(oMe,"nState"); object oDest=GetLocalObject(oMe,"oDest"); if (nState==0) { // open SetLocalInt(oMe,"nState",1); AssignCommand(oMe,ActionPlayAnimation(ANIMATION_PLACEABLE_OPEN,1.0,10.0)); DelayCommand(10.2,AssignCommand(oMe,ActionPlayAnimation(ANIMATION_PLACEABLE_CLOSE,1.0,10.0))); DelayCommand(10.1,DeleteLocalInt(oMe,"nState")); } // open else if (nState==1&&GetIsObjectValid(oDest)) { // jump AssignCommand(oPC,ClearAllActions(TRUE)); AssignCommand(oPC,JumpToObject(oDest)); nState=GetLocalInt(oDest,"nState"); if (nState!=1&&GetTag(oMe)!="door_cata") { // open SetLocalInt(oDest,"nState",1); AssignCommand(oDest,ActionPlayAnimation(ANIMATION_PLACEABLE_OPEN,1.0,10.0)); DelayCommand(10.2,AssignCommand(oDest,ActionPlayAnimation(ANIMATION_PLACEABLE_CLOSE,1.0,10.0))); DelayCommand(10.1,DeleteLocalInt(oDest,"nState")); } // open } // jump }