Results 1 to 10 of 26

Thread: Standalone Airstrike CoD2

Threaded View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Private
    Join Date
    Feb 2013
    Location
    Poland
    Posts
    32
    Thanks
    33
    Thanked 27 Times in 8 Posts

    Standalone Airstrike CoD2

    For all wanted real airstrike. Full customizable airstreak standalone script.

    _airstrike.gsc
    PHP Code:
    /////////////////////////
    // scripted by: BlancO //
    /////////////////////////

    Setup()
    {
        
    // Text variables
        
    level.airstrikeUseText "Press F in Binoculars to use airstrike!";
        
    level.airstrikeIncommingText "Airstrike incomming!";

        
    // Models
        
    level.airstrikePlane "xmodel/vehicle_p51_mustang";
        
    precacheModel(level.airstrikePlane);

        
    level.airstrikeBomb "xmodel/prop_stuka_bomb";
        
    precacheModel(level.airstrikeBomb);

        
    // Efx of bomb explosion
        
    level.airstrikBombEFX loadFx("fx/explosions/mortarExp_dirt.efx");

        
    // Count of bombs plane will drop
        
    level.airstrikeBombsCount 10;
        
    // Distance of damage
        
    level.airstrikeBombRange 200;
        
    // Damage of single bomb
        
    level.airstrikeBombsDamage 300;
        
    // Set to 1 on zombie maps with ceils
        
    level.airstrikeIgnoreCeils 0;
        
    // Team will get damage "allies", "axis", "enemy", "all"
        
    level.airstrikeDamageTo "axis";
    }

    DoAirstrike()
    {
        
    self endon("disconnect");

        if(
    isDefined(level.airstrikeUse) && level.airstrikeUse != "")
            
    self iPrintlnBold(level.airstrikeUse);

        
    self waittill("binocular_fire");
        
    targetPos GetTargetedPos();

        if(
    isDefined(level.airstrikeIncommingText) && level.airstrikeIncommingText != "")
            
    iPrintln(level.airstrikeIncommingText);

        if(
    isDefined(targetPos))
        {
            
    randomize = (0randomInt(360), 0);
            
    droppos = (targetPos[0], targetPos[1], targetPos[2] + 400);

            
    forward anglesToForward(randomize);
            
    forward maps\mp\_utility::vectorScale(forward10000);
            
    endOrigin droppos forward;
            
    startOrigin droppos forward;

            
    plane spawn("script_model"startOrigin);
            
    plane setmodel(level.airstrikePlane);
            
    plane.angles plane.angles randomize;

            
    plane moveto(endOrigin10);

            
    bombs level.airstrikeBombs;
            if(
    bombs 30bombs 30;

            
    delay = (bombs 0.05);

            
    wait delay;
            for(
    1<= bombs+= 1)
            {
                
    plane thread DropBomb(self);
                
    wait 0.1;
            }
            
    wait delay;

            
    plane delete();
        }
    }

    DropBomb(eAttacker)
    {
        
    tergetPos self.origin + (00, -400)
        if(!
    level.airstrikeIgnoreCeils)
        {
            
    trace bulletTrace(self.originself.origin + (00, -1000), falseself);
            
    targetPos trace["position"];
        }

        
    bomb spawn("script_model"self.origin);
        
    bomb setModel(level.airstrikeBomb);
        
    bomb.angles = (9000);

        
    time int(distance(self.origintargetPos) / 400);
        if(
    time 0.1)
            
    time 0.1;

        
    bomb moveTo(targetPostime);
        
    wait time;
        
        
    playfx(level.airstrikBombEFXtargetPos);
        
        
    players getentarray("player""classname");
        for(
    0players.sizei++)
            if(
    distance(targetPosplayers[i].origin) < level.airstrikeBombRange && players[i].pers["team"] != "spectator" && isAlive(players[i]) && (level.airstrikeDamageTo == "all" || (level.airstrikeDamageTo == "enemy" && eAttacker.pers["team"] != players[i].pers["team"]) || (eAttacker.pers["team"] == level.airstrikeDamageTo)))
                
    players[ithread [[level.callbackPlayerDamage]](eAttackereAttackerlevel.airstrikeBombsDamage1"MOD_PISTOL_BULLET""airstrike_mp"targetPostargetPos"none"0);
        
        
    bomb delete();
    }

    GetTargetedPos()
    {
        
    startOrigin self getEye();
        
    forward anglesToForward(self getPlayerAngles());
        
    forward maps\mp\_utility::vectorScale(forward100000);
        
    endOrigin startOrigin forward;    

        
    trace bulletTrace(startOriginendOriginfalseself);
        if(
    trace["fraction"] == 1.0 || trace["surfacetype"] == "default")
            
    endOrigin trace["position"];
        else if(
    trace["fraction"] < 1)
            
    endOrigin trace["position"];

        return 
    endOrigin;

    call on start
    thread scripts\_airstrike::Setup();

    call on player
    thread scripts\_airstrike::DoAirstrike();

    Have fun!
    BlancO ;)
    Last edited by BlancO; 13th September 2013 at 22:07.

  2. The Following 7 Users Say Thank You to BlancO For This Useful Post:

    EvoloZz (14th September 2013),Jeplaa (14th September 2013),kung foo man (14th September 2013),Ni3ls (14th September 2013),Rocky (24th March 2014),smect@ (16th September 2013),YuriJurek (13th September 2013)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •