X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fcommon%2Fvehicles%2Fvehicle%2Fspiderbot.qc;h=a0954b5013078f6ec3e552b5ca923efc7f20a730;hb=8c094d930e9ef51767384452f80a3bccdc6fd38d;hp=164371e131b5274eef7f81c41e7d74f4ffcf9911;hpb=f134a25da56d9f4c3452cbd47a7ee97d795fc759;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/common/vehicles/vehicle/spiderbot.qc b/qcsrc/common/vehicles/vehicle/spiderbot.qc index 164371e13..a0954b501 100644 --- a/qcsrc/common/vehicles/vehicle/spiderbot.qc +++ b/qcsrc/common/vehicles/vehicle/spiderbot.qc @@ -1,7 +1,5 @@ #include "spiderbot.qh" -#ifdef IMPLEMENTATION - const int SBRM_FIRST = 1; const int SBRM_VOLLY = 1; const int SBRM_GUIDE = 2; @@ -123,9 +121,9 @@ bool spiderbot_frame(entity this, float dt) } if (!PHYS_INPUT_BUTTON_JUMP(this)) - PHYS_INPUT_BUTTON_JUMP(vehic) = false; + vehic.button2 = false; - if((IS_ONGROUND(vehic)) && PHYS_INPUT_BUTTON_JUMP(this) && !PHYS_INPUT_BUTTON_JUMP(vehic) && vehic.tur_head.wait < time) + if((IS_ONGROUND(vehic)) && PHYS_INPUT_BUTTON_JUMP(this) && !vehic.button2 && vehic.tur_head.wait < time) { sound (vehic, CH_TRIGGER_SINGLE, SND_VEH_SPIDERBOT_JUMP, VOL_VEHICLEENGINE, ATTEN_NORM); //dprint("spiderbot_jump:", ftos(soundlength("vehicles/spiderbot_jump.wav")), "\n"); @@ -133,14 +131,14 @@ bool spiderbot_frame(entity this, float dt) vehic.tur_head.wait = time + 2; vehic.jump_delay = time + 2; - PHYS_INPUT_BUTTON_JUMP(vehic) = true; // set spider's jump + vehic.button2 = true; // set spider's jump //PHYS_INPUT_BUTTON_JUMP(this) = false; vector movefix = '0 0 0'; - if(this.movement_x > 0) movefix_x = 1; - if(this.movement_x < 0) movefix_x = -1; - if(this.movement_y > 0) movefix_y = 1; - if(this.movement_y < 0) movefix_y = -1; + if(CS(this).movement_x > 0) movefix_x = 1; + if(CS(this).movement_x < 0) movefix_x = -1; + if(CS(this).movement_y > 0) movefix_y = 1; + if(CS(this).movement_y < 0) movefix_y = -1; vector rt = movefix_y * v_right; vector sd = movefix_x * v_forward; @@ -154,7 +152,7 @@ bool spiderbot_frame(entity this, float dt) } else if(time >= vehic.jump_delay) { - if(!this.movement) + if(!CS(this).movement) { if(IS_ONGROUND(vehic)) { @@ -172,7 +170,7 @@ bool spiderbot_frame(entity this, float dt) else { // Turn Body - if(this.movement_x == 0 && this.movement_y != 0) + if(CS(this).movement_x == 0 && CS(this).movement_y != 0) ftmp = autocvar_g_vehicle_spiderbot_turnspeed_strafe * PHYS_INPUT_FRAMETIME; else ftmp = autocvar_g_vehicle_spiderbot_turnspeed * PHYS_INPUT_FRAMETIME; @@ -181,23 +179,23 @@ bool spiderbot_frame(entity this, float dt) vehic.angles_y = anglemods(vehic.angles_y + ftmp); vehic.tur_head.angles_y -= ftmp; - if(this.movement_x != 0) + if(CS(this).movement_x != 0) { - if(this.movement_x > 0) + if(CS(this).movement_x > 0) { - this.movement_x = 1; + CS(this).movement_x = 1; if(IS_ONGROUND(vehic)) vehic.frame = 0; } - else if(this.movement_x < 0) + else if(CS(this).movement_x < 0) { - this.movement_x = -1; + CS(this).movement_x = -1; if(IS_ONGROUND(vehic)) vehic.frame = 1; } - this.movement_y = 0; + CS(this).movement_y = 0; float oldvelz = vehic.velocity_z; - movelib_move_simple(vehic, normalize(v_forward * this.movement_x),((PHYS_INPUT_BUTTON_JUMP(this)) ? autocvar_g_vehicle_spiderbot_speed_run : autocvar_g_vehicle_spiderbot_speed_walk),autocvar_g_vehicle_spiderbot_movement_inertia); + movelib_move_simple(vehic, normalize(v_forward * CS(this).movement_x),((PHYS_INPUT_BUTTON_JUMP(this)) ? autocvar_g_vehicle_spiderbot_speed_run : autocvar_g_vehicle_spiderbot_speed_walk),autocvar_g_vehicle_spiderbot_movement_inertia); vehic.velocity_z = oldvelz; float g = ((autocvar_sv_gameplayfix_gravityunaffectedbyticrate) ? 0.5 : 1); if(vehic.velocity_z <= 20) // not while jumping @@ -211,23 +209,23 @@ bool spiderbot_frame(entity this, float dt) //dprint("spiderbot_walk:", ftos(soundlength("vehicles/spiderbot_walk.wav")), "\n"); } } - else if(this.movement_y != 0) + else if(CS(this).movement_y != 0) { - if(this.movement_y < 0) + if(CS(this).movement_y < 0) { - this.movement_y = -1; + CS(this).movement_y = -1; if(IS_ONGROUND(vehic)) vehic.frame = 2; } - else if(this.movement_y > 0) + else if(CS(this).movement_y > 0) { - this.movement_y = 1; + CS(this).movement_y = 1; if(IS_ONGROUND(vehic)) vehic.frame = 3; } float oldvelz = vehic.velocity_z; - movelib_move_simple(vehic, normalize(v_right * this.movement_y),autocvar_g_vehicle_spiderbot_speed_strafe,autocvar_g_vehicle_spiderbot_movement_inertia); + movelib_move_simple(vehic, normalize(v_right * CS(this).movement_y),autocvar_g_vehicle_spiderbot_speed_strafe,autocvar_g_vehicle_spiderbot_movement_inertia); vehic.velocity_z = oldvelz; float g = ((autocvar_sv_gameplayfix_gravityunaffectedbyticrate) ? 0.5 : 1); if(vehic.velocity_z <= 20) // not while jumping @@ -451,7 +449,7 @@ void spiderbot_blowup(entity this) SUB_SetFade(g1, time, min(this.respawntime, 10)); SUB_SetFade(g2, time, min(this.respawntime, 10)); - RadiusDamage (this, this.enemy, 250, 15, 250, NULL, NULL, 250, DEATH_VH_SPID_DEATH.m_id, NULL); + RadiusDamage (this, this.enemy, 250, 15, 250, NULL, NULL, 250, DEATH_VH_SPID_DEATH.m_id, DMG_NOWEP, NULL); this.alpha = this.tur_head.alpha = this.gun1.alpha = this.gun2.alpha = -1; set_movetype(this, MOVETYPE_NONE); @@ -639,4 +637,3 @@ METHOD(Spiderbot, vr_setup, void(Spiderbot thisveh, entity instance)) } #endif -#endif