home *** CD-ROM | disk | FTP | other *** search
- #-----------------------------------------------------------------------------
- # Droidworks
- # Sample cog for a simple conversation with Bob.
- #
- # Desc: cog that makes the Repair Droid in the moisture farm talk to the player, and
- # makes him go on the counterweight.
- #
- #
- #
- #
- #
- #
- # 2/12/98 [JP] Created, mostly with Matt's Gonk cog.
- #
- #-----------------------------------------------------------------------------
-
- symbols
- message converse
- message startup
- message arrived
- message user2 #sent from counterweight, when arrive at top
- message user3 #sent from counterweight, when arrive at bottom
- message user1 #gonkhelpsout
- message user7
- message user5
- message user6
- message timer
-
- cog cwcog
-
- sector shaftsector
- sector startsector
- sector shafttop
-
- thing Gonk
- thing player local
- thing Ctrldoor
-
- int Met=0 local #variables when rdroid is in the shed
-
- sector topofcw
- #message user6 #from corrosion.cog
- int welded=0 local
- #message user5 #send when on cw, so you can't talk to gonk
- #message user8 #gonkhelpsout
- #message user4 #gonkopendoor
- cog rdroid2 #2nd part of Rdroid.cog
- surface weld1 nolink
- surface weld2 nolink
- surface weld3 nolink
- surface weld4 nolink
- surface weld5 nolink
-
- message user4
-
- message pulse
-
- end
-
-
-
- code
- startup:
- sleep(4);
- print("startup");
- AISetMoveSpeed(gonk, 1);
- AISetLookFrame(gonk, 1);
- AISetMoveFrame(gonk, 1);
- gonkcurframe=1;
- player=getlocalplayerthing();
- #setpulse(1);
- mattTateishi=0;
- setpulse(3);
- return;
-
- pulse:
- if ( (getwallcel(weld1)==6)&&
- (getwallcel(weld2)==6)&&
- (getwallcel(weld3)==6)&&
- (getwallcel(weld4)==6)&&
- (getwallcel(weld5)==6)&&
- (mattTateishi==0) ) {
- MattTateishi=1;
- sendmessage(rdroid2, user2);
- print("you did it!!!");
- dwplaycammyspeech(16042, "M3CA035.wav", 5, 3);
- setpulse(0);
- }
- else print("there's still some corroded pipes");
- return;
-
-
- user5:
- //notalk=1; //on cw, so made so you can't talk to gonk
- sendmessage(rdroid2, user5); //notalk=1
- return;
-
-
- //gonkhelpsout:
- user1:
- //user8=gonkhelpsout
- print("KING MOTHRA!!!!");
- AISetMoveSpeed(gonk, 3); #changed from 1 a
- AISetLookFrame(gonk, 2);
- AISetMoveFrame(gonk, 2);
- #gonkcurframe=2;
- sendmessage(cwcog, user5); #sent message to cwcog
- return;
-
- user7:
- //user7=gonkopendoor: //don't use user4!!
- print("??????");
- AISetMoveSpeed(gonk, 3);
- AISetLookFrame(gonk, 5);
- AISetMoveFrame(gonk, 5);
- sleep(3);
- movetoframe(Ctrldoor, 1, 2);
- return;
-
- user3:
- print ("user3");
- if (getthingsector(gonk)==shaftsector)
- {
- print("moving NOW.");
- AISetMoveSpeed(gonk, 3); #changed from 1 a
- AISetlookframe(gonk, 3);
- AISetMoveframe(gonk, 3);
- gonkcurframe=3;
- dwplaycharacterspeech("RPC800", "M3ED024.wav"); #thanks droid! let me take you...
- dwClearDialog();
- settimer(5);
- }
-
- else if (getthingsector(gonk)==shafttop)
- {
- print("stop and stay");
- sendmessage(rdroid2, user6); //indicate 2 rdroid2 met=7
- met = 7;
- }
-
- else
- {
- sendmessage(rdroid2, user4);
- }
-
- return;
-
- user4:
- return;
-
- arrived:
- printint(gonkcurframe);
- if (gonkcurframe==3)
- {
- #dwSetDialogText("RPC800"); # rdroid: thanks droid! let me take you...
- #settimer(5);
- AISetMoveSpeed(gonk, 3); #changed from 1 a
- AISetLookFrame(gonk, 4);
- AISetMoveFrame(gonk, 4);
- gonkcurframe=4;
- sendmessage(rdroid2, user3); //indicate 2 rdroid2 met=3
- met=3;
- }
-
- else if (gonkcurframe==4)
- {
- AISetLookFrame(gonk, 6);
- # MoveToFrame(Ctrldoor, 1, 3);
- }
-
-
- return;
-
-
- #user6:
- # #message from corrosion.cog
- # print("user6");
- # welded = welded + 1;
- # if (welded > 19)
- # {
- # print("all welded");
- # dwplaycammyspeech(16042, "M3CA035.wav", 5, 3);
- # sendmessage(rdroid2, user2); //indicate 2 rdroid2 met=5
- # met = 5;
- # print("rdroid2user2sent");
- # }
- # return;
-
-
- timer:
- sendmessage(rdroid2, user4); //to rdroid2, so that notalk=0
- print("rdroid2user4sent");
- notalk=0;
- #dwsetmissiontext(00000);
- #dwEndDialog();
- #called to open up door
- #MoveToFrame(Ctrldoor, 1, 4);
- return;
-
- //pulse:
- // print("top_of_cw");
- // printint(top_of_cw);
- // print("shaftsector");
- // printint(shaftsector);
- // print("startsector");
- // printint(startsector);
- // print("shafttop");
- // printint(shafttop);
- // print("user6");
- // printint(user6);
- // print("welded variable");
- // printint(welded);
- // return;
-
-
- end
-
-
-