X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fcheats.qc;h=04172b5eb2b59d74de854c3c1d440ad4c5f7827a;hb=86c4f57358c37c4165945b1c99840aa447b50000;hp=aa38904526e95a9eba875c9b3d7a9104daaeb08f;hpb=fbd313c7ceb26a09310d8062926f4ac2468623a8;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/cheats.qc b/qcsrc/server/cheats.qc index aa3890452..04172b5eb 100644 --- a/qcsrc/server/cheats.qc +++ b/qcsrc/server/cheats.qc @@ -3,12 +3,14 @@ #include #include #include +#include #include "g_damage.qh" +#include "player.qh" #include "race.qh" #include "../common/mapobjects/teleporters.qh" -#include "mutators/_mod.qh" +#include #include "weapons/tracing.qh" @@ -23,6 +25,7 @@ #include #include "../common/mapobjects/subs.qh" +#include #include "../common/mapobjects/func/breakable.qh" @@ -31,8 +34,6 @@ #include "../lib/warpzone/anglestransform.qh" #include "../lib/warpzone/util_server.qh" -void CopyBody(entity this, float keepvelocity); - #ifdef NOCHEATS float CheatImpulse(entity this, int imp) { return 0; } @@ -151,14 +152,14 @@ float CheatImpulse(entity this, int imp) this.personal.origin = this.origin; this.personal.v_angle = this.v_angle; this.personal.velocity = this.velocity; - this.personal.ammo_rockets = this.ammo_rockets; - this.personal.ammo_nails = this.ammo_nails; - this.personal.ammo_cells = this.ammo_cells; - this.personal.ammo_plasma = this.ammo_plasma; - this.personal.ammo_shells = this.ammo_shells; - this.personal.ammo_fuel = this.ammo_fuel; - this.personal.health = max(1, this.health); - this.personal.armorvalue = this.armorvalue; + SetResourceAmount(this.personal, RESOURCE_ROCKETS, GetResourceAmount(this, RESOURCE_ROCKETS)); + SetResourceAmount(this.personal, RESOURCE_BULLETS, GetResourceAmount(this, RESOURCE_BULLETS)); + SetResourceAmount(this.personal, RESOURCE_CELLS, GetResourceAmount(this, RESOURCE_CELLS)); + SetResourceAmount(this.personal, RESOURCE_PLASMA, GetResourceAmount(this, RESOURCE_PLASMA)); + SetResourceAmount(this.personal, RESOURCE_SHELLS, GetResourceAmount(this, RESOURCE_SHELLS)); + SetResourceAmount(this.personal, RESOURCE_FUEL, GetResourceAmount(this, RESOURCE_FUEL)); + SetResourceAmount(this.personal, RESOURCE_HEALTH, max(1, GetResourceAmount(this, RESOURCE_HEALTH))); + SetResourceAmount(this.personal, RESOURCE_ARMOR, GetResourceAmount(this, RESOURCE_ARMOR)); STAT(WEAPONS, this.personal) = STAT(WEAPONS, this); this.personal.items = this.items; this.personal.pauserotarmor_finished = this.pauserotarmor_finished; @@ -210,14 +211,14 @@ float CheatImpulse(entity this, int imp) MUTATOR_CALLHOOK(AbortSpeedrun, this); } - this.ammo_rockets = this.personal.ammo_rockets; - this.ammo_nails = this.personal.ammo_nails; - this.ammo_cells = this.personal.ammo_cells; - this.ammo_plasma = this.personal.ammo_plasma; - this.ammo_shells = this.personal.ammo_shells; - this.ammo_fuel = this.personal.ammo_fuel; - this.health = this.personal.health; - this.armorvalue = this.personal.armorvalue; + SetResourceAmount(this, RESOURCE_ROCKETS, GetResourceAmount(this.personal, RESOURCE_ROCKETS)); + SetResourceAmount(this, RESOURCE_BULLETS, GetResourceAmount(this.personal, RESOURCE_BULLETS)); + SetResourceAmount(this, RESOURCE_CELLS, GetResourceAmount(this.personal, RESOURCE_CELLS)); + SetResourceAmount(this, RESOURCE_PLASMA, GetResourceAmount(this.personal, RESOURCE_PLASMA)); + SetResourceAmount(this, RESOURCE_SHELLS, GetResourceAmount(this.personal, RESOURCE_SHELLS)); + SetResourceAmount(this, RESOURCE_FUEL, GetResourceAmount(this.personal, RESOURCE_FUEL)); + SetResourceAmount(this, RESOURCE_HEALTH, GetResourceAmount(this.personal, RESOURCE_HEALTH)); + SetResourceAmount(this, RESOURCE_ARMOR, GetResourceAmount(this.personal, RESOURCE_ARMOR)); STAT(WEAPONS, this) = STAT(WEAPONS, this.personal); this.items = this.personal.items; this.pauserotarmor_finished = time + this.personal.pauserotarmor_finished - this.personal.teleport_time; @@ -290,7 +291,6 @@ float CheatImpulse(entity this, int imp) END_CHEAT_FUNCTION(); } -void DragBox_Think(entity this); float drag_lastcnt; float CheatCommand(entity this, int argc) { @@ -355,7 +355,7 @@ float CheatCommand(entity this, int argc) entity e = spawn(); e.model = strzone(argv(1)); e.mdl = "rocket_explode"; - e.health = 1000; + SetResourceAmountExplicit(e, RESOURCE_HEALTH, 1000); setorigin(e, trace_endpos); e.effects = EF_NOMODELFLAGS; if(f == 1) @@ -710,18 +710,6 @@ float CheatCommand(entity this, int argc) END_CHEAT_FUNCTION(); } -float Drag(entity this, float force_allow_pick, float ischeat); -void Drag_Begin(entity dragger, entity draggee, vector touchpoint); -void Drag_Finish(entity dragger); -float Drag_IsDraggable(entity draggee); -float Drag_MayChangeAngles(entity draggee); -void Drag_MoveForward(entity dragger); -void Drag_SetSpeed(entity dragger, float s); -void Drag_MoveBackward(entity dragger); -void Drag_Update(entity dragger); -float Drag_CanDrag(entity dragger); -float Drag_IsDragging(entity dragger); -void Drag_MoveDrag(entity from, entity to); .entity dragentity; float CheatFrame(entity this)