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
-
-
-
- thing Gonk
- thing player local
-
-
- int ConversationActive=0 local
- int gonkcurframe=0 local
- int ResponseID local
-
- int Met=0 local #variables when rdroid is in the shed
-
- message user3
- message user2
- message user5 #send when on cw, so you can't talk to gonk
- message user4 #sent from rdroid, so that notalk=0;, right after gonk gets lowered
- message user6
-
- cog rdroid #original rdroid
- end
-
-
-
- code
- startup:
- sleep(5);
- player=getlocalplayerthing();
- notalk=0;
- return;
-
- user5:
- //sent from rdroid's user5
- notalk=1;
- return;
-
- user4:
- //sent from rdroid's timer/user3
- notalk=0;
- return;
-
- user6:
- //sent from rdroid's user3/gonk in shafttop
- //indicate met=7
- notalk=0;
- met=7;
- return;
-
- user3:
- //sent from rdroid's arrived: show met=3
- met=3;
- return;
-
- user2:
- //sent from rdroid's user6: show met=5
- print("met5");
- notalk=0;
- met=5;
- return;
-
-
-
- converse:
- if (notalk == 1) return;
-
- else if (notalk == 0)
- {
- playerpos=getthingpos(player);
- aisetlookpos(gonk, playerpos);
- print("converse");
- dwplayplayerresponse();
- # What response did the player select?
- ResponseID = dwGetPlayerResponse();
-
- if (ResponseID == 0 && !ConversationActive)
- {
- # Response 0 is reserved to indicate that a conversation is starting
- ConversationActive = 1;
- playsong(0, 0, 0);
- dwfreezeplayer();
- ResponseID = 1;
- }
-
- if (ResponseID == 1)
- {
- if (met == 0) # they haven't met yet
- {
- print("met0");
- dwplaycharacterspeech("RPC001", "M3ED001.wav"); # rdroid hello droid, i'm glad you're here now!
- dwAddResponse(100, "JFP100", "T1xx033.wav", 71); # p what are you doing here?
- dwAddResponse(200, "JFP200", "M3xx014.wav", 72); # p can you help me?
- //dwAddResponse(300, "JFP300"); # p: whre's the moisture farm? LLLLLLLLLLL
- dwAddResponse(006, "MFP006", "IDxx222.wav", 20); # p bye
- met=1;
- }
- else if (met == 1) #made it from an "else if" to a "if"
- {
- print("met1");
- dwplaycharacterspeech("RPC003", "T1ED007.wav"); # rdroid hello again
- dwAddResponse(100, "JFP100", "T1xx033.wav", 71); # p what are you doing here?
- dwAddResponse(200, "JFP200", "M3xx014.wav", 72); # p can you help me?
- //dwAddResponse(300, "JFP300"); # p: whre's the moisture farm? LLLLL
- dwAddResponse(006, "MFP006", "IDxx222.wav", 20); # p bye
- met= 1;
- }
-
- else if (met == 2)
- {
- print("met2");
- dwplaycharacterspeech("RXC004", "M3ED043.wav"); # what do you want this time?
- dwAddResponse(100, "JFP100", "T1xx033.wav", 71); # p: (indv.) what are you doing here?
- dwAddResponse(200, "JFP200", "M3xx014.wav", 72); # p: can you help me?
- dwAddResponse(300, "JFP300", "M3xx015.wav", 73); # p: where's the moisture farm?
- dwAddResponse(310, "JFP800", "M3xx045.wav", 71); #p how much you weigh?
- dwAddResponse(006, "MFP006", "IDxx222.wav", 20); # p: bye
- #Met= 1;
- }
-
- else if (met == 3) #already went down the c/w
- {
- dwplaycharacterspeech("RPC003", "T1ED007.wav"); #rdroid hello again
- dwAddResponse(900, "JFP900", "M3xx031.wav", 73); # p is this where the corrosion is?
- }
-
- else if (met == 4)
- {
- dwplaycharacterspeech("RXC001", "M3ED031.wav"); # rdroid: hello again, have you repaird the corrosion yet?
- dwAddResponse(930, "RXP100", "M3xx036.wav", 71); #p: where did you say those pipes are?
- //dwAddResponse(931, "RXP200", "M3xx037.wav", 40); #p: my welder don't work
- //dwAddResponse(932, "RXP210"); #p: my end effectors don't work LLLLL
- dwAddResponse(933, "RXP300", "M3xx039.wav", 72); #p how do i drain the water?
- dwAddResponse(934, "RXP400", "M3xx040.wav", 73); #p how do i operate the gear
- dwAddResponse(003, "RXP600", "IDxx222.wav", 20); #p: bye
- }
-
- else if (met == 5)
- {
- print("met5"); #dude corroded all...
- //if (GetInv(player, 15) > 0.0)
- // {
- //
- // if (GetHealth(player) < 50)
- // {
- // dwplaycharacterspeech("RCC005", "M3ED041.wav"); #dude is hurt
- // dwAddResponse(950, "RCP200", "M3xx042.wav", 71); #p what do i do now?
- // }
- //
- // else
- // {
- dwplaycharacterspeech("RCC000", "M3ED040.wav");
- dwAddResponse(950, "RCP200", "M3xx042.wav", 71);
- // }
- // }
- }
-
-
- else if (met == 6)
- {
- #when the dude doesn't have the right parts...
- print("met6");
- dwplaycharacterspeech("RXC004", "M3ED043.wav"); #what do you want this time?
-
- dwAddResponse(111, "JFP100", "T1xx033.wav", 71); #p what are you doing here?
- dwAddResponse(200, "JFP200", "M3xx014.wav", 71); #p can you help me?
- dwAddResponse(006, "MFP006", "IDxx222.wav", 20); #bye
- }
-
- else if (met == 7)
- {
- #when dude is on top of the counterweight
- print("met7");
- dwplaycharacterspeech("RPC411", "M3ED014.wav"); #rd what, what's the matter?
- dwAddResponse(800, "JFP800", "M3xx045.wav", 71); #p how much you weigh?
- dwAddResponse(810, "JFP440", "M3xx025.wav", 40); #p why don't cw work?
- }
-
- else if (met == 8)
- {
- #when dude is on cw but not at top/bottom
- print("met8");
- dwplaycharacterspeech("RPC003", "T1ED007.wav"); #rd hello again!
- dwAddResponse(700, "JFP800", "M3xx045.wav", 71); #p how much you weigh?
- dwAddResponse(710, "MFP006", "IDxx222.wav", 20); #p bye
- }
-
- else if (met == 9)
- //after he asks for first time, have you repaird corrosion yet? It's after met =4
- {
- dwplaycharacterspeech("RXC004", "M3ED043.wav"); # r what do you want this time?
- dwAddResponse(930, "RXP100", "M3xx036.wav", 71); #p: where did you say those pipes are?
- //dwAddResponse(931, "RXP200", "M3xx037.wav", 40); #p: my welder don't work
- dwAddResponse(933, "RXP300", "M3xx039.wav", 72); #p how do i drain the water?
- dwAddResponse(934, "RXP400", "M3xx040.wav", 73); #p how do i operate the gear
- dwAddResponse(003, "RXP600", "IDxx222.wav", 20); #p: bye
- }
-
-
-
- }
- # Set up two responses for the player
- if (ResponseID == 100)
- {
- dwplaycharacterspeech("RPC100", "M3ED004.wav"); # rdroid i was sent to fix...blah
- dwAddResponse(1, "JFP210", "M3xx020.wav", 60); # p: i'm sorry about your... thnx for telling me
- if ( (dwCheckDroidCaps(256)) && (dwCheckDroidCaps(131072)) )
- {
- met = 2;
- }
- else
- {
- met = 6;
- }
- }
-
-
- if (ResponseID == 111)
- {
- dwplaycharacterspeech("RPC100", "M3ED004.wav"); #rd same as responseID 100, xcept, not right parts
- dwAddResponse(1, "MFP003", "T6xx006.wav", 60); #p oh
- met = 6;
- }
-
- if (ResponseID == 200)
- {
- if ( (dwCheckDroidCaps(256)) && (dwCheckDroidCaps(131072)) )
- {
- dwplaycharacterspeech("RPC200", "M3ED006.wav"); # rdroid: sure, i'll be happy...
-
- dwAddResponse(1, "MFP004", "T1xx014.wav", 30); # p: okay!
- //dwAddResponse(310, "JFP800", "M3xx045.wav", 71); #p how much you weigh?
- dwAddResponse(006, "MFP006", "IDxx222.wav", 20); #p bye
- met = 2;
- }
-
- else
- {
- //dwplaycharacterspeech("RPC210", "M3ED007.wav"); #rdroid: you need right parts
- dwplaycharacterspeech("RPC211", "M3ED008.wav"); #rdroid: come back when you got right parts
- dwAddResponse(210, "JFP210", "M3xx020.wav", 60); #p: thanks for telling me
- met = 6;
- }
- }
- if (ResponseID == 210)
- {
- #dude doesn't got right parts
- //dwplaycharacterspeech("RPC211", "M3ED008.wav"); #rdroid: come back when you got right parts
- dwplaycharacterspeech("RXC003", "M3ED033.wav");
- dwClearDialog();
- ConversationActive=0;
- ShuffleTracks(6, 7, 8, 9);
- dwunfreezeplayer();
- met = 1;
- }
-
-
- if (ResponseID == 300)
- {
- dwplaycharacterspeech("RPC300", "M3ED009.wav"); # rdroid: it's down that c/w lift ...
-
- dwAddResponse(310, "JFP310", "M3xx021.wav", 73); # p: that is strange, how much do you weigh?
- dwAddResponse(006, "MFP006", "IDxx222.wav", 20); # p: bye
- }
-
- if (ResponseID == 310)
- {
- dwplaycharacterspeech("RPC310", "M3ED011.wav"); # rdroid: i weigh 175, ...
-
- dwAddResponse(400, "JFP400", "M3xx016.wav", 30); # p: could you go stand on the c/w?
- dwAddResponse(1, "MFP005", "T3xx002.wav", 30); # p: thanks
- }
-
- if (ResponseID == 400)
- {
- dwplaycharacterspeech("RPC400", "M3ED012.wav"); # rdroid: no way...
- dwAddResponse(410, "JFP410", "M3xx022.wav", 60); # p: please?
- //dwAddResponse(1, "MFP003", "T6xx006.wav", 40); # p: oh okay
- }
-
- if (ResponseID == 410)
- {
- dwplaycharacterspeech("RPC410", "M3ED013.wav"); #rdroid: I said no and that's final
- dwAddResponse(411, "JFP411", "M1xx003.wav", 50); #p hm
- //dwAddResponse(1, "MFP003", "T6xx006.wav", 40); #p oh okay
- }
-
- if (ResponseID == 411)
- {
- dwplaycharacterspeech("RPC411", "M3ED014.wav"); #rdroid: What, what's the matter?
- dwAddResponse(412, "JFP412", "M3xx027.wav", 70); #p: i WILL ahve to report...
- }
-
- if (ResponseID == 412)
- {
- dwplaycharacterspeech("RPC412", "M3ED015.wav"); #rdroid: you wouldn't would you?
- dwAddResponse(413, "JFP413", "M3xx028.wav", 70); #p: it's the procedure for all droids...
- }
-
- if (ResponseID == 413)
- {
- dwplaycharacterspeech("PRC413", "M3ED016.wav"); #rdroid: you don't understnd. i'll be sold for scrap
- dwAddResponse(414, "JFP414", "M3xx029.wav", 30); #p: will you help me out then?
- }
-
- if (ResponseID == 414)
- {
- dwplaycharacterspeech("RPC414", "M3ED017.wav"); #rdroid: i'll do anything you wa...
- dwAddResponse(415, "JFP415", "M3xx030.wav", 30);
- }
-
- if (ResponseID == 415)
- {
- dwplaycharacterspeech("RPC415", "M3ED018.wav"); #rdroid: you bet! i'll be happy...
- dwClearDialog();
- ConversationActive=0;
- ShuffleTracks(6, 7, 8, 9);
- # Enable the player
- dwunfreezeplayer();
- sendmessage(rdroid, user1); //user8=gonkhelpsout
- print("r_u1");
- //call gonkhelpsout;
- met=8; //on cw, but hasn't gone up or down yet...
- }
-
- if (ResponseID == 420)
- {
- dwplaycharacterspeech("RPC420", "M3ED019.wav"); #rdroid: i'll do anything you wa...
- dwAddResponse(1, "MFP003", "T6xx006.wav", 60); #p: MAKE IT SAY, FUNNY);
- }
-
- if (ResponseID == 430)
- {
- dwplaycharacterspeech("RPC430", "M3ED020.wav"); #rdroid: i'll do anything you wa...
- dwAddResponse(1, "MFP003", "T6xx006.wav", 60); #p: MAKE IT SAY, FUNNY);
- }
-
-
- if (ResponseID == 500)
- {
- dwplaycharacterspeech("RPC500", "M3ED022.wav"); #rdroid: i'll do anything you wa...
- dwAddResponse(1, "MFP003", "T6xx006.wav", 60); #p: MAKE IT SAY, FUNNY);
- }
-
- //if (ResponseID == 600)
- // {
- // dwplaycharacterspeech("RPC600", "M3ED023.wav"); #rdroid: fort tusken...
- // dwAddResponse(1, "MFP003", "T6xx006.wav", 60); #p: MAKE IT SAY, FUNNY);
- // }
- if (ResponseID == 700)
- {
- dwplaycharacterspeech("RPC310", "M3ED011.wav"); #rd i'm 175, heavy eh?
- dwAddResponse(710, "JFP940", "T3xx002.wav", 60); #p thanks
- }
-
-
- if (ResponseID == 800)
- {
- dwplaycharacterspeech("RPC310", "M3ED011.wav"); #rd i'm 175, pretty heavy eh?
- dwAddResponse(005, "JFP940", "T3xx002.wav", 60); #p thanks
- }
-
- //if (ResponseID == 801)
- // {
- // dwplaycharacterspeech("RPC310", "M3ED011.wav"); #rd i'm 175, heavy eh?
- // dwAddResponse(009, "JFP940", "T3xx002.wav", 60); #p thanks
- // }
-
- if (ResponseID == 810)
- {
- dwplaycharacterspeech("RPC440", "M3ED021.wav");
- dwAddResponse(005, "MFP003", "T6xx006.wav", 60); #p oh okay
- }
-
- if (ResponseID == 900)
- {
- dwplaycharacterspeech("RPC900", "M3ED025.wav"); #rdroid: yes. after this one, there are four more places...
- dwAddResponse(920, "JFP920", "M3xx032.wav", 60); #about that report...
- }
-
- if (ResponseID == 920)
- {
- dwplaycharacterspeech("RPC920", "M3ED027.wav"); #rdroid: hey, i helped you out...
- dwAddResponse(921, "JFP921", "M3xx035.wav", 70); #p i'll put in a good word for you
- //dwClearDialog();
- //ConversationActive=0;
- //dwunfreezeplayer();
- //met = 4;
- }
-
- if (ResponseID == 921)
- {
- dwClearDialog();
- ConversationActive=0;
- ShuffleTracks(6, 7, 8, 9);
- dwunfreezeplayer();
- met = 4;
- }
-
-
- if (ResponseID == 930)
- {
- dwplaycharacterspeech("RXC100", "M3ED034.wav"); #rdroid: did you check the inside of the water tanks?
- dwAddResponse(1, "MFP003", "T6xx006.wav", 60); #p: oh okay
- met=9;
- }
-
- if (ResponseID == 931)
- {
- dwplaycharacterspeech("RXC200", "M3ED035.wav"); #rdroid: that's becauseit wasn't designed to work underwater
- dwAddResponse(1, "MFP003", "T6xx006.wav", 60); #p: oh okay
- met=9;
- }
-
- #if (ResponseID == 932)
- # {
- # dwplaycharacterspeech("RXC210"); #rdroid: i don't think you've got the right end effectors
- #
- # dwAddResponse(1, "MFP004"); #p: okay
- # }
-
- if (ResponseID == 933)
- {
- dwplaycharacterspeech("RXC300", "M3ED037.wav"); #rdroid: you can drain the water from...
- dwAddResponse(1, "MFP003", "T6xx006.wav", 60);
- met=9;
- }
-
- if (ResponseID == 934)
- {
- dwplaycharacterspeech("RXC400", "M3ED038.wav"); #rdroid: each valve is controlled by gear...
- dwAddResponse(1, "MFP003", "T6xx006.wav", 60); #p: okay
- met=9;
- }
-
- if (ResponseID == 935)
- {
- dwplaycharacterspeech("RXC500", "M3ED039.wav");
- dwAddResponse(1, "MFP003", "T6xx006.wav", 60); #p: MAKE IT SAY, FUNNY
- }
-
- if (ResponseID == 950)
- {
- print("r950");
- dwplaycharacterspeech("RCC200", "M3ED044.wav"); #rdroid: you're not done yet.
- dwAddResponse(951, "RCP300", "M3xx043.wav", 71); #p: why don't you do it?
- #MoveToFrame(Ctrldoor, 1, 10);
- }
-
- if (ResponseID == 951)
- {
- print("r951");
- dwplaycharacterspeech("RPX300", "M3ED045.wav"); #rdroid
- dwAddResponse(952, "RCP400", "M3xx044.wav", 40); #p: i feel totally drained.
- }
-
- if (ResponseID == 952)
- {
- print("r952");
- dwplaycharacterspeech("RPX400", "M3ED046.wav"); #droid's job ain't done, that's for sure
- dwAddResponse(008, "RCP500", "IDxx222.wav", 20); #008 bye message after ctrl door opens
- //sendmessage(rdroid, user7);
- // call gonkopendoor;
- }
-
- if (ResponseID == 006)
- {
- print("r006"); #first goodbye, goodluck.
- dwplaycharacterspeech("RPC950", "M3ED030.wav"); #rdroid: goodbye, good luck!
-
- dwClearDialog();
- ConversationActive=0;
- ShuffleTracks(6, 7, 8, 9);
- # Enable the player
- dwunfreezeplayer();
- met = 1;
- }
-
- if (ResponseID == 003)
- {
- #goodbye after 1st welding spot
- print("r003");
- dwplaycharacterspeech("RXC003", "M3ED033.wav");
- dwclearDialog();
- ConversationActive=0;
- ShuffleTracks(6, 7, 8, 9);
- dwunfreezeplayer();
- met=4; //this was okay before rdroid2
- }
-
- if (ResponseID == 005)
- {
- #dude says goodbye at upstairs point of c/w
- print("r005");
- dwplaycharacterspeech("RPC950", "M3ED030.wav");
- dwcleardialog();
- ConversationActive=0;
- ShuffleTracks(6, 7, 8, 9);
- dwunfreezeplayer();
- met = 7;
- }
-
- if (ResponseID == 008)
- {
- #dude says bye after Ctrl Rm door opens
- print("r008");
- dwplaycharacterspeech("RPC950", "M3ED030.wav");
- dwcleardialog();
- ConversationActive=0;
- ShuffleTracks(6, 7, 8, 9);
- dwunfreezeplayer();
- met = 5;
- notalk=1;
- sendmessage(rdroid, user7);
- }
-
- if (ResponseID == 710)
- {
- #dude says bye on cw before going up/down
- dwplaycharacterspeech("RPC950", "M3ED030.wav");
- print("r710");
- dwcleardialog();
- ConversationActive=0;
- ShuffleTracks(6, 7, 8, 9);
- dwunfreezeplayer();
- met = 8; //still there on cw b4 going up/down
- }
- }
- return;
-
-
-
-
-
- end
-
-
-
-
-
-