home *** CD-ROM | disk | FTP | other *** search
/ GameStar 2006 April / Gamestar_83_2006-04_dvd.iso / Dema / demowot_english.exe / Script / Source / Chapter2 / MS05-C2L1-Cutscenes.inc next >
Text File  |  2005-03-11  |  9KB  |  329 lines

  1. // Extension for MS05-C2L1.sma
  2.  
  3. // #define CS_BASELOCKIT "#iMS05_SP
  4. // #define CS_BASETEXT gSound_
  5.  
  6. #include "cutscene.inc"
  7.  
  8.  
  9.  
  10.  
  11. //======================================================================================================
  12. public ShowStats()
  13.     ShowTheStats();
  14.  
  15.  
  16.  
  17.  
  18. //======================================================================================================
  19. public Cutscene_Intro( DrID:Sender, Param )
  20. {
  21.     #define SELF "Cutscene_Intro"
  22.     CS_START    
  23.     
  24.         CS_1 // Futnak a katonak, amig rajuk nem lonek
  25.             CS_FIRST
  26.             GroupOff( "StartingPlayerUnits" );
  27.             SetCutScene( true, _, true );
  28.             TeleportCameraToEnt( E( "al_rifleman45" ));
  29.             CameraFollow( E( "al_rifleman45" ));
  30.             CameraSet( 0.0, 55.000, 27.0 );
  31.             CmdGroupSetMS( "IntroAttackers", Q_OVERRIDE, MS_RUN );
  32.             FormationMoveToEnt( "IntroAttackers", E( "wpg1" ), Q_ENQUEUE );
  33.             AddAKEntityEvent( SELF, ANY_ENTITY, WEAPON_SHOT );
  34.             
  35.         CS_2 // A haz fele fordulunk
  36.             StoreGameSpeed( 0.001 );
  37.  
  38.             CameraSpeed( 50.0, 50.0, 50.0, 50.0 ); // CamSpeed, RotSpeed, ZoomSpeed, PitchSpeed
  39.             CameraSet( -72.0, 40.0, 18.0, false );
  40.             CS_WAIT_CAM
  41.  
  42.         CS_3 // Hit the dirt!
  43.             SetGameSpeed( 0.1 );
  44.             CmdGroupStop( "IntroAttackers", Q_OVERRIDE );
  45.             CmdGroupRandomWait( "IntroAttackers", 3.0, Q_ENQUEUE );
  46.             CmdGroupSetMS( "IntroAttackers", Q_ENQUEUE, MS_CRAWL );
  47.             CmdGroupAttack( "IntroAttackers", Q_ENQUEUE, E( gCafeDelNormandy ));
  48.             CS_WAIT_AL(3.0)
  49.         
  50.         CS_4 // Mutassuk meg az epuletet
  51.             ResetCameraSpeed();                
  52.             CameraFollow( DrID:0 );
  53.             MoveCameraToEnt( E( gCafeDelNormandy ));
  54.             CameraSet( -72.0, 40.0, 14.0, false );
  55.             CS_WAIT_AL(2.5)
  56.  
  57.         CS_5 // Forogjunk jol
  58.             CameraSpeed( 3.0, 3.0, 3.0, 3.0 );
  59.             MoveCameraToEnt( E( "al_rifleman45" ));
  60.             RestoreGameSpeed();            
  61.             CameraSet( 140.0, 40.0, 30.0, false );
  62.             CS_WAIT_AL(3.0)
  63.  
  64.         CS_6 // Es csak forogjunk
  65.             CameraSet( 20.0, 40.0, 30.0, false );
  66.             CS_WAIT_AL(7.0)        
  67.             
  68.         CS_7 // Bemennek a hazba:
  69.             KillCrew( E( gCafeDelNormandy ));
  70.             SetPropertyInt( E( gCafeDelNormandy ), "LastTeam", 0 ); // hogy lehessen mountolni
  71.         
  72. //            new DrID:House = E( "build_house_level2_051" ); // Hack
  73.             new DrID:House = E( gCafeDelNormandy );
  74.  
  75. //            MoveCameraToEnt( E( "build_house_level2_051" ));
  76.             MoveCameraToEnt( E( gCafeDelNormandy ));
  77.             CameraSet( -60.0, 50.0, 22.0, false );
  78.             
  79.             CmdGroupRandomWait( "IntroAttackers", 1.2, Q_OVERRIDE );
  80.             CmdGroupSetMS( "IntroAttackers", Q_ENQUEUE, MS_RUN );
  81.             CmdGroupMount( "MustHavePlayerUnits", Q_ENQUEUE, House, MTF_MAKE_TARGET_WAIT );
  82.             CmdWait( House, Q_ENQUEUE, 1.6 );
  83.             CmdUnmount( House, Q_ENQUEUE );
  84.             AddAKSelectorEvent( SELF, "IntroAttackers", UNIT_UNMOUNTED );
  85.             AddAKEntityEvent( SELF, House, UNIT_UNMOUNTED );
  86.  
  87.         CS_8 // ...es szovegelnek
  88.             CameraSpeed( 8.0, 8.0, 8.0, 8.0 )
  89.             MoveCameraToEnt( E( "cameratarget_afterunmount" ));
  90.             CS_SAYWAIT(05,001A) //Building is clear!
  91.  
  92.         CS_9 // ...es csak szovegelnek
  93.             CS_SAYWAIT(05,001B) //OK Guys! Let's go further. But be careful! And try to avoid crosses. They are usually well defended.
  94.  
  95.         CS_10 // Mozgatjuk a StartingPlayerUnitokat
  96.             GroupOn( "StartingPlayerUnits" );
  97.             AddGroupToGroup( "StartingPlayerUnits", gEasyHelpGroup );
  98.             new DrID:FirstStartingUnit = GetNearestEntity( E( gCafeDelNormandy ), "StartingPlayerUnits" );
  99.  
  100.             CameraSet( -45.0, 50.0, 30.0, false );
  101.  
  102.             if( FirstStartingUnit )
  103.             {
  104.                 new Units[80] = "Cutscene_Intro_Units";
  105.                 CameraFollow( FirstStartingUnit );
  106.                 FilterSelectorUnmounted( Units, "StartingPlayerUnits" );
  107.                 SetSpeedInSelector( "StartingPlayerUnits", 9.0 );
  108.                 MoveCameraToEnt( E( gIntro_MoveTargetName ));
  109.                 FormationMoveToEnt( Units, E( gIntro_MoveTargetName ), Q_OVERRIDE, MF_DIRECT );
  110.                 AddTimerEvent( "CutsceneIntro_CloseSection", 5.0, "AnimLogic", true );
  111.  
  112.                 CmdThrowEvent( FirstStartingUnit, Q_ENQUEUE, FIRST_UNIT_ARRIVED );
  113.                 AddAKEntityEvent( SELF, FirstStartingUnit, CMD_EVENT );
  114.             }
  115.  
  116.         CS_11 // Beallitjuk a dogokat a jatekos kedvere
  117.             CS_UE_CHECK(FIRST_UNIT_ARRIVED,DL_WARNING)
  118.  
  119.             ResetCameraSpeed();
  120.             CameraFollow( DrID:0 );
  121.             
  122.             SetCutScene( false );
  123.             SetSpeedInSelector( "StartingPlayerUnits", 0.0 );
  124.  
  125.             CameraSet( 0.0, 55.0, 40.0, false );
  126.  
  127.             AddTimerEvent( "CutsceneIntro_CloseSection", 1.0, "AnimLogic", true );
  128.             CS_LAST
  129.     
  130.     CS_END
  131. }
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138. //======================================================================================================
  139. public Cutscene_HQ( DrID:Sender, Param )
  140. {
  141.     #undef SELF
  142.     #define SELF "Cutscene_HQ"
  143.     static FOWBaconName[200];
  144.     
  145.     CS_START
  146.     
  147.         CS_1 // Beinditjuk erositest
  148.             CS_FIRST
  149.             // Remember fowbacon
  150.             GetPropertyString( CreateFOWBtoEntity( E( gHQName ), "fovbacon_60" ), "StringID", 199, FOWBaconName );
  151.             SetPropertyInt( E( FOWBaconName ), "Team", 2 );
  152.             
  153.             // Reinforcement start
  154.             GroupOn( gPlayerReinforcementSoldiers );
  155.             AddGroupToGroup( gPlayerReinforcementSoldiers, gEasyHelpGroup );
  156.             AddGroupToGroup( gPlayerReinforcementSoldiers2, gEasyHelpGroup );
  157.  
  158. //             new Units[80] = "Cutscene_HQ_Units";
  159. //             FilterSelectorUnmounted( Units, gPlayerReinforcementSoldiers );
  160.             CmdMoveToEnt( E( "al_m3a11" ), E( "wpb2" ), Q_OVERRIDE, MF_DIRECT | MF_OVERRUN );
  161.             CmdMoveToEnt( E( "al_m3a11" ), E( "wpb3" ), Q_ENQUEUE );
  162. //             CmdGroupMoveToEnt( Units, E( "wpb3" ), Q_ENQUEUE );
  163.             CS_WAIT(3.0)
  164.  
  165.         CS_2 // Kamera kovesse az erositest
  166.             // Camera:
  167.             CamPosStore();
  168.             SetCutScene( true );
  169.             StoreGameSpeed();    
  170.             
  171.             SetCameraDampValue( 0.0 );
  172.             CameraSpeed( 12.0, 12.0, 12.0, 12.0 );
  173.             CameraFollow( E( "al_m3a11" ));
  174.             CameraSet( 40.0, 45.0, 20.0, false );
  175.             CS_WAIT(8.0)
  176.  
  177.         CS_3 // Es csak forogjon
  178.             CameraSet( -60.0, 45.0, 35.0, false );
  179.             CS_WAIT(1.2)
  180.             
  181.         CS_4 // Kizoomolunk a haz fole
  182.             CameraSet( -60.0, 60.0, 45.0, false );
  183.             CS_WAIT(1.2)
  184.         
  185.         CS_5 // Bezoomolunk a hazon tul
  186.             CameraSet( -60.0, 45.0, 30.0, false );
  187.             CS_SAY(05,002A) // Good work guys! We cleared the town.
  188.             CS_WAIT(1.2)
  189.  
  190.         CS_6 // Ugorjunk a menekulokhoz
  191.             Cutscene_HQ_Escape();
  192.             CameraFollow( NULL );
  193.             SetCameraSpeed( 8.0 );
  194.             SetCameraRotSpeed( 1.8 );
  195.             MoveCameraToEnt( E( gEscapingStart_CameraTarget ));
  196.             CameraSet( 270.0, 45.000, 20.0, false );
  197.             CS_WAIT(1.5)
  198.  
  199.         CS_7 // Kovessuk a mozgasukat, es szovegeljunk
  200.             CS_WAIT_SPEACH_END
  201.             CS_SAYWAIT(05,002B) // But look! They are escaping! Don't let them to reach and fortify their defence lines!
  202.  
  203.         CS_8
  204.             CS_SAYWAIT(05,002C) // The swamp makes them move slow.
  205.             
  206.         CS_9
  207.             CS_SAYWAIT(05,002D) // Vechicles can not go into the swamp, but we can get round quickly on the road.
  208.  
  209.         CS_10
  210.             SetPropertyInt( E( FOWBaconName ), "Team", 0 );
  211.             RefreshFOW();
  212.             RestoreGameSpeed();
  213.             SetCutScene( false );
  214.             CutsceneHQ_CloseSection();
  215.             CamPosRestore();
  216.             CS_LAST
  217.  
  218.     CS_END
  219. }
  220.  
  221.  
  222.  
  223.  
  224.  
  225. // particle_artillery_impact1
  226. //======================================================================================================
  227. public Cutscene_Artillery( DrID:Sender, Param )
  228. {
  229.     #undef SELF
  230.     #define SELF "Cutscene_Artillery"
  231.     static FOWBaconName[200];
  232.  
  233.     CS_START
  234.     
  235.         CS_1
  236.             CS_FIRST
  237.             SetNoDamageMode( true );
  238.             
  239.             CamPosStore();
  240.             SetCutScene( true );
  241.             StoreGameSpeed( 0.13 );
  242.  
  243. // hack:
  244.             CmdWait( E( gArtillery1), Q_OVERRIDE, 0.5 );
  245.             CmdAttack( E( gArtillery1), Q_ENQUEUE, E( "artillery_target" ), AF_ONE_SHOT | AF_FORCE );
  246.  
  247.             GetPropertyString( CreateFOWBtoEntity( E( gHQName ), "fovbacon_60" ), "StringID", 199, FOWBaconName );
  248.             SetPropertyInt( E( FOWBaconName ), "Team", 2 );
  249.  
  250.             MoveCameraToEnt( E( gHQName ));
  251.             CameraSpeed( 20.0, 20.0, 20.0, 20.0 );
  252.             CameraSet( -40.0, 55.0, 20.0, false )
  253.             CS_WAIT_CAM
  254.  
  255.         CS_2
  256.             ActivateEntity( E( "particle_artillery_impact1" ));
  257.             SetCameraTargetDistance( 25.0 );
  258.             SetCameraTargetRotate( 40.0 );
  259.             CS_WAIT_AL(1.0)
  260.             
  261.         CS_3
  262.             CS_SAY(05,003A) // The town is under artillery attack! We shoul'd move out the town.
  263.             CS_WAIT_AL(5.0)
  264.         
  265.         CS_4
  266.             SetPropertyInt( E( gArtillery_FOWBeacon ), "Team", 2 );
  267.             RefreshFOW();
  268.             CameraSpeed( 6.0, 16.0, 12.0, 12.0 );
  269.             SetCameraTargetPitch( 45.0 );
  270.             SetCameraTargetRotate( 90.0 );
  271.             MoveCameraToEnt( E( gArtillery2 ));
  272.             CS_WAIT_AL(5.5)
  273.  
  274.         CS_5
  275.             SetCameraTargetRotate( -130.0 );
  276.             CS_WAIT_AL(3.5)
  277.  
  278.         CS_6
  279.             SetCameraTargetRotate( -130.0 );
  280.             MoveCameraToEnt( E( gArtillery1 ));
  281.             CS_SAY(05,003B) // And if you can manage: Take out the artillery pieces.
  282.             CS_WAIT_AL(2.0)
  283.         
  284.         CS_7
  285. //            SetCameraTargetDistance( 15.0 );
  286. //            SetCameraTargetPitch( 45.0 );
  287. //             CmdAttack( E( gArtillery1), Q_OVERRIDE, E( "artillery_target" ), AF_ONE_SHOT | AF_FORCE );
  288.             AddAKEntityEvent( SELF, E( gArtillery1), WEAPON_SHOT );
  289.             AddTimerEvent( SELF, 8.0, "AnimLogic", true ); // ha valamiert megse lone a hulyeje
  290.             
  291.         CS_8
  292.             CS_WAIT_AL(5.0)
  293.             
  294.         CS_9
  295.             CamPosRestore();
  296.             CS_WAIT_AL(1.0)
  297.         
  298.         CS_10
  299.             SetPropertyInt( E( FOWBaconName ), "Team", 0 );
  300.             SetPropertyInt( E( gArtillery_FOWBeacon ), "Team", 0 );
  301.             RefreshFOW();
  302.             RestoreGameSpeed();
  303.             SetCutScene( false );
  304.             CutsceneArtillery_CloseSection();
  305.             ResetCameraSpeed();
  306.             SetNoDamageMode( false );
  307.             CS_LAST
  308.  
  309.     CS_END
  310. }
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.