home *** CD-ROM | disk | FTP | other *** search
/ Classic Fond 52 / ClassicFond52.iso / GAMES / DROIDW.RAR / DWCD.GOB / mission_cog_t1_droidscheck.cog < prev    next >
Encoding:
Text File  |  1998-11-04  |  7.2 KB  |  268 lines

  1. # Droids Cog Script
  2. #
  3. # D0_skyway.cog
  4. #
  5. # Goals for catapult 
  6. #
  7. #
  8. #
  9. # [MT]                                              
  10. #
  11. #
  12. # (C) 1997 LucasLearningLimited. All Rights Reserved
  13.  
  14.  
  15.  
  16. symbols                     
  17. message        startup
  18. message        touched
  19. message        killed
  20. message        damaged
  21. message        pulse
  22. message        timer
  23. message        user5
  24. message        user6
  25. message        user7
  26.  
  27. thing          Edroid         mask=-1
  28. thing          Rdroid         mask=-1
  29.  
  30. cog            goalscog
  31. cog            rdroidtalkcog
  32.  
  33. surface        targetfloor    mask=0xffff    linkid=1
  34. surface        targetfloor2   mask=0xffff    linkid=1
  35.  
  36. surface        deathfloor1    mask=0xffff    linkid=2
  37. surface        deathfloor2    mask=0xffff    linkid=2
  38. surface        deathfloor3    mask=0xffff    linkid=2
  39. surface        deathfloor4    mask=0xffff    linkid=2
  40. surface        deathfloor5    mask=0xffff    linkid=2
  41. surface        deathfloor6    mask=0xffff    linkid=2
  42. surface        deathfloor7    mask=0xffff    linkid=2
  43.  
  44.  
  45. sound          BAM=droidhit02.wav       
  46.  
  47. keyframe       GonkDIEkey=pddie.key     
  48.  
  49. sector         deathsector1   nolink
  50. sector         deathsector1a  nolink
  51. sector         deathsector2   nolink
  52.  
  53. thing          deathcamera1   nolink
  54. thing          deathcamera2   nolink
  55.  
  56. thing          endjawa   
  57. thing          teleportdest
  58.  
  59. sound          goalsound=00tAccomplish.wav        local
  60.  
  61. sector         goodsector     nolink
  62.  
  63.  
  64. end
  65.  
  66. ## Code Section
  67. code    
  68.  
  69. startup:
  70.      player=getlocalplayerthing(); 
  71.      endjawapos=getthingpos(endjawa);
  72.      setthinghealth(Edroid, 500);
  73.      setthinghealth(Rdroid, 500);
  74.      goodtogo=0;
  75.      return;
  76.      
  77. user5:
  78.      if (goodtogo==0) { 
  79.           print("starting check for success sequence");
  80.           settimerEX(.25, 5, 0, 0);
  81.           goodtogo=1;
  82.      }
  83.      else print("already checking");
  84.      return;
  85.  
  86. user6:
  87.      if (goodtogo==0) { 
  88.           print("starting check for death sequence");
  89.           settimerEX(.25, 6, 0, 0);
  90.           goodtogo=1;
  91.      }
  92.      else print("already checking");
  93.      return;
  94.  
  95. user7:
  96.      if (goodtogo==0) { 
  97.           print("starting check for mass reset");
  98.           settimerEX(.25, 7, 0, 0);
  99.           goodtogo=1;
  100.      }
  101.      else print("already checking");
  102.      return;
  103.      
  104. touched:
  105.      if (getsenderid()==1) {
  106.           if (getsourceref()==Edroid) {
  107.                print("Edroid is safE!!!");
  108.                setthingvel(Edroid, '0,0,0');   
  109.                sendmessage(Rdroidtalkcog, user3);
  110.                call moveawayEdroid;
  111.           }
  112.           else if (getsourceref()==Rdroid) { 
  113.                print("Rdroid is safe!!!");  
  114.                setthingvel(Rdroid, '0,0,0');
  115.                call moveawayRdroid;    
  116.                print("they're both safe!");
  117.                playsoundlocal(goalsound, 1.0, 0.0, 0);     
  118.                setinv(player, 5, 1);
  119.           }
  120.      }
  121.      else if ( (getdifficulty()==2)&&(getsenderid()==2) ) {
  122.           if (getsourceref()==Edroid) {
  123.                print("Edroid is DEAD!!!");
  124.                damagething(Edroid, 9999, 0x2, player);
  125.           }
  126.           else if (getsourceref()==Rdroid) { 
  127.                print("Rdroid is DEAD!!!");  
  128.                damagething(Rdroid, 9999, 0x2, player);
  129.           }
  130.      }
  131.      return;
  132.  
  133. moveawayEdroid:
  134.      setpulse(0.01);
  135.      AISetMoveSpeed(Edroid, 1.5);
  136.      AISetLookPos(Edroid, endjawapos);
  137.      AISetMovePos(Edroid, endjawapos); 
  138.      return;
  139.      
  140. moveawayRdroid:
  141.      setpulse(0.01);
  142.      AISetMoveSpeed(Rdroid, 1.5);
  143.      AISetLookPos(Rdroid, endjawapos);
  144.      AISetMovePos(Rdroid, endjawapos); 
  145.      return;
  146.      
  147.  
  148. pulse:
  149.      if (vectordist(getthingpos(Edroid), endjawapos) < .12) {
  150.           setpulse(0);
  151.           teleportthing(Edroid, teleportdest);
  152.      }
  153.      if (vectordist(getthingpos(Rdroid), endjawapos) < .16) {
  154.           setpulse(0);
  155.           teleportthing(Rdroid, teleportdest);
  156.      }
  157.      return;
  158.  
  159. killed:
  160.      print("killed");
  161.      if (getsenderref()==Edroid) {
  162.           playsoundlocal(BAM, 1.0, 0.0, 0);
  163.           sleep(3);    
  164.           dwplaycammyspeech(16010, "t1ca010.wav", 10, 2); 
  165.           settimerEX(25, 1, 0, 0);                
  166.           print ("that was the Edroid that was killed");
  167.           settimerEX(2, 3, 0, 0);
  168.      }
  169.      if (getsenderref()==Rdroid) {
  170.           playsoundlocal(BAM, 1.0, 0.0, 0);
  171.           sleep(3);    
  172.           dwplaycammyspeech(16010, "t1ca010.wav", 10, 2); 
  173.           settimerEX(25, 1, 0 ,0);                
  174.           print ("that was the Rdroid that was killed");
  175.           settimerEX(2, 3, 0, 0);
  176.      }
  177.      return;
  178.      
  179. damaged:
  180.      print("damaged");
  181.      return;
  182.      
  183. timer:
  184.      if (getsenderid()==1) {
  185.           print("endlevel");
  186.           dwendlevel();
  187.      }
  188.      else if (getsenderid()==3) {     
  189.           setinv(player, 5, 0);
  190.      }      
  191.      else if (getsenderid()==5) {
  192.           print("checking for success...");
  193.           if (getthingsector(Edroid)==goodsector) {
  194.                print("Edroid safe safe safe");
  195.                setthingvel(Edroid, '0,0,0');   
  196.                sendmessage(Rdroidtalkcog, user3);
  197.                call moveawayEdroid;
  198.                goodtogo=0;
  199.           }
  200.           else if (getthingsector(Rdroid)==goodsector) {
  201.                print("Rdroid safe part 2");
  202.                setthingvel(Rdroid, '0,0,0');
  203.                call moveawayRdroid;    
  204.                print("they're both safe!");
  205.                playsoundlocal(goalsound, 1.0, 0.0, 0);     
  206.                setinv(player, 5, 1);          
  207.                goodtogo=0;
  208.           }
  209.           else {
  210.                settimerEX(.25, 5, 0, 0);
  211.                print("nothing yet.");
  212.           }
  213.      }  
  214.      else if (getsenderid()==6) {
  215.           print("checking for death...");
  216.           goodtogo=0;
  217.           if (getthingsector(Edroid)==deathsector2) call destroyEdroid;
  218.           else if (getthingsector(Rdroid)==deathsector2) call destroyRdroid;
  219.           else {
  220.                goodtogo=1;
  221.                settimerEX(.25, 6, 0, 0);
  222.                print("nothing yet.");
  223.           }
  224.      }
  225.      else if (getsenderid()==7) {
  226.           print("checking for reset of mass...");
  227.           goodtogo=0;
  228.           if (getthingsector(Edroid)==deathsector1) setthingmass(Edroid, 0);
  229.           else if (getthingsector(Rdroid)==deathsector1) setthingmass(Rdroid, 0);
  230.           else {
  231.                goodtogo=1;
  232.                settimerEX(.25, 7, 0, 0);
  233.                print("nothing yet.");
  234.           }
  235.      }     
  236.      return;
  237.      
  238. destroyRdroid:
  239.      print("Rdroid is DEAD!!!");  
  240.      damagething(Rdroid, 9999, 0x2, player);
  241.      playsoundlocal(BAM, 1.0, 0.0, 0);
  242.      sleep(3);    
  243.      dwplaycammyspeech(16010, "t1ca010.wav", 10, 2); 
  244.      settimerEX(25, 1, 0 ,0);                
  245.      print ("that was the Rdroid that was killed");
  246.      settimerEX(2, 3, 0, 0);
  247.      return;
  248.      
  249. destroyEdroid:
  250.      playsoundlocal(BAM, 1.0, 0.0, 0);
  251.      sleep(3);    
  252.      dwplaycammyspeech(16010, "t1ca010.wav", 10, 2); 
  253.      settimerEX(25, 1, 0, 0);                
  254.      print ("that was the Edroid that was killed");
  255.      settimerEX(2, 3, 0, 0);
  256.      return;
  257.  
  258.  
  259.  
  260.                  
  261. end
  262.  
  263.  
  264.  
  265.  
  266.