]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/cheats.qc
Merge remote branch 'refs/remotes/origin/terencehill/newpanelhud'
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / cheats.qc
index 45eab621ea6b83caf327e662ceff0648dc2d09fe..8d837b801453091e65b6443b00ea3a1ed4991721 100644 (file)
@@ -15,7 +15,6 @@ void Drag_MoveDrag(entity from, entity to) { }
 
 .float maycheat;
 float sv_cheats;
-float autocvar_sv_cheats;
 
 #define CHIMPULSE_SPEEDRUN_INIT 30
 #define CHIMPULSE_GIVE_ALL 99
@@ -654,7 +653,7 @@ float CheatCommand(float argc)
                        if(self.movetype != MOVETYPE_FLY)
                        {
                                self.movetype = MOVETYPE_FLY;
-                               sprint(self, "flmodey ON\n");
+                               sprint(self, "flymode ON\n");
                                DID_CHEAT();
                        }
                        else
@@ -673,6 +672,7 @@ float CheatCommand(float argc)
        END_CHEAT_FUNCTION();
 }
 
+void crosshair_trace_plusvisibletriggers(entity pl);
 void Drag_Begin(entity dragger, entity draggee, vector touchpoint);
 void Drag_Finish(entity dragger);
 float Drag_IsDraggable(entity draggee);
@@ -726,7 +726,7 @@ float CheatFrame()
                if(Drag_CanDrag(self))
                        if(self.BUTTON_DRAG)
                        {
-                               crosshair_trace(self);
+                               crosshair_trace_plusvisibletriggers(self);
                                if(trace_ent)
                                        if(Drag_IsDraggable(trace_ent))
                                                switch(0)
@@ -753,6 +753,22 @@ float CheatFrame()
 
 // ENTITY DRAGGING
 
+void crosshair_trace_plusvisibletriggers(entity pl)
+{
+       entity first;
+       entity e;
+       first = findchainfloat(solid, SOLID_TRIGGER);
+
+       for (e = first; e; e = e.chain)
+               if (e.model != "")
+                       e.solid = SOLID_BSP;
+
+       crosshair_trace(pl);
+
+       for (e = first; e; e = e.chain)
+               e.solid = SOLID_TRIGGER;
+}
+
 // on dragger:
 .float draggravity;
 .float dragspeed; // speed of mouse wheel action
@@ -829,14 +845,16 @@ float Drag_IsDraggable(entity draggee)
                return FALSE;
        if(draggee.classname == "func_button")
                return FALSE;
-       if(draggee.model == "")
-               return FALSE;
+//     if(draggee.model == "")
+//             return FALSE;
        if(draggee.classname == "spectator")
                return FALSE;
        if(draggee.classname == "observer")
                return FALSE;
        if(draggee.classname == "exteriorweaponentity")
                return FALSE;
+       if(draggee.classname == "weaponentity")
+               return FALSE;
 
        return TRUE;
 }