Results 1 to 11 of 11

Threaded View

  1. #1
    Yamato's Avatar
    Join Date
    Jul 2010
    Gender
    male
    Posts
    839
    Reputation
    13
    Thanks
    154
    My Mood
    Amazed

    Tank Killstreak V1

    Good afternoon

    Today Rendflex and me, we are going to release the Tank killstreak V1, we are making a new V2, with improved sistems and optimized. About driving sistem, we had one but after testing I found that it crashes after sometime, so I putted SetModel, . Aiming sistem is good.

    You have 2 weapons:

    Cannon, you press Right click to aim and you get a ac130 sight, shot and you get an accurate shot.

    Turret, if you press R you get a cool mgturret to shot "infantry", you can only fire it during 7 seconds, then it dissapears(like a overheating, we are improving that too, we nearly finished that part)

    I hope that you like it, it took lot of time to find model, I made at the end a code to find models and found it. :P. We made this for our zombie mod V2, weŽll do release next weekend, so it has an aspect of a box, weŽll make in Tank V2 a linking sistem, we wanted to release this soon so the code is not very good, is in Alpha stage. You can make a killstreak with this, a box(what he have) or make a Tank.gsc like we did, :P. Remember to precache in init the model: vehicle_m1a1_abrams_dmg



    Code:
    Tank(pos, angle)
    {
    	tank = spawn("script_model", pos );
    	tank setModel("vehicle_m1a1_abrams_dmg");
    	tank.angles = angle;
    	tank Solid();
    	tank CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    	tank.headIcon = newHudElem();
    	tank.headIcon.x = tank.origin[0];
    	tank.headIcon.y = tank.origin[1];
    	tank.headIcon.z = tank.origin[2] + 50;
    	tank.headIcon.alpha = 0.85;
    	tank.headIcon setShader( "cardicon_tank_01", 2,2 );
    	tank.headIcon setWaypoint( true, true, false );
                  trigger = spawn( "trigger_radius", pos, 0, 50, 50 );
                  trigger.angles = angle;
    	trigger thread TankThink(pos, angle);
    	wait 0.01;
    }
    
    TankThink(pos, angle) 
    { 
        self endon("disconnect"); 
        tank = spawn("script_model", pos );
        tank setModel("vehicle_m1a1_abrams_dmg");
        tank.angles = angle;
        tank Solid();
        tank CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    
    
            while(1) 
            { 
                    self waittill( "trigger", player );  
                    if(player.tank != 1)     
                    if(Distance(pos, Player.origin) <= 75){
                    Player setLowerMessage("activate", "Press ^3[{+activate}]^7 to Drive Tank [^31750^7]" );}
                    if(Distance(pos, Player.origin) >50){
                    Player ClearLowerMessage("activate", 1);}
                    if(Distance(pos, Player.origin) <= 75 && player.tank != 1 && player.cash >= 1750 && player useButtonPressed())
                    { 
                            player ClearLowerMessage("activate", 1);
                            player.cash -= 1750;
                            tank delete();
                            player thread Tanker();
                            wait 60;
                            player thread Exitted();    
                            wait 1;
                    } 
                    else if(Distance(pos, Player.origin) <= 75 && player.tank != 1 && player.cash <= 1750 && player useButtonPressed())
                    {
                            player iPrintln("You do not have enough points!");
                            wait 1;
                    }
               wait .25; 
            }   
    }
    
    
    
    Tanker()
    {
            self endon ("death");
            self endon ("exitTank");
    
                                self setModel("vehicle_m1a1_abrams_dmg");
           	              self _clearPerks();
                                self allowJump(false);
    		self DisableWeaponSwitch();
    		self _disableUsability();
    	              self.moveSpeedScaler = 0.6;
    		self setClientDvar("cg_thirdPerson", 1); 
    		self setClientDvar("cg_thirdPersonRange", "1024");
                                self thread TankAims();
                                self thread Turret();
                                self maps\mp\perks\_perks::givePerk("specialty_quieter");
    }
    
    TankAims()
    {
    	self endon ( "disconnect" );
    	self endon ( "death" );
                  self endon ("exitTank");
    
                  self notifyOnPlayerCommand("[{+toggleads_throw}]", "+toggleads_throw");
    	while(1) 
                 {
                                self takeAllWeapons();
    		self waittill("[{+toggleads_throw}]");
    		wait 0.3;
    		self setClientDvar("cg_thirdPerson", 0); 
                                self giveWeapon("ac130_40mm_mp", 0, false);
                                self switchToWeapon("ac130_40mm_mp");
                                self waittill( "weapon_fired" );
    		self playSound( "bmp_fire" );
    		self setClientDvar("cg_thirdPerson", 1); 
                                self takeAllWeapons();
                                self giveWeapon("ac130_40mm_mp", 0, false);
                                self switchToWeapon("ac130_40mm_mp");
    		wait 0.0005; 
                 }
    }
    
    Turret()
    {
        self endon ( "disconnect" );
        self endon ( "death" );
        self endon ("exitTank");
    
                  self EnableLinkTo();
                  self notifyOnPlayerCommand( "T", "+reload");  
    
                  for (;;)                 
                  { 
                            self waittill( "T" );
                            Turret = spawnTurret( "misc_turret", self.origin+(50,0,50), "pavelow_minigun_mp" ); 
                            Turret LinkTo("self");
                            Turret setModel( "weapon_minigun" );
                            Turret.angles = self.angles;
                            Turret MakeUsable();
                            Turret useby(self);
                            Turret EnableLinkTo();
                            self PlayerLinkTo( Turret, 0.5 );
                            wait 7;
                            Turret delete();
                            self Unlink(Turret);
                  }
    }
    
    ChangeAppearance(Type,MyTeam)
    {
    	ModelType=[];
    	ModelType[0]="GHILLIE";
    	ModelType[1]="SNIPER";
    	ModelType[2]="LMG";
    	ModelType[3]="ASSAULT";
    	ModelType[4]="SHOTGUN";
    	ModelType[5]="SMG";
    	ModelType[6]="RIOT";
    	if(Type==7){MyTeam=randomint(2);Type=randomint(7);  }
    	team=get_enemy_team(self.team);if(MyTeam)team=self  .team;
    	self detachAll();
    	[[game[team+"_model"][ModelType[Type]]]]();
    }
    
    Exitted()
    {
                                self thread ChangeAppearance(5,1);
    		self setClientDvar("cg_thirdPerson", 0); 
                                self giveWeapon("ump45_mp");
                                self giveWeapon("spas12_mp");
                                self switchToWeapon("ump45_mp");
    	              self.moveSpeedScaler = 1;
                                self allowJump(true);
                                self allowSprint(true);
                                self notify ("exitTank");
    }
    Thanks for reading,
    Last edited by Yamato; 03-17-2011 at 11:38 AM.

  2. The Following 3 Users Say Thank You to Yamato For This Useful Post:

    jadjkorn64 (05-16-2011),StewieGriffin (03-17-2011),YuDi21 (03-25-2011)