From: Mircea Kitsune Date: Mon, 24 Oct 2011 23:11:33 +0000 (+0300) Subject: Only allow a player to edit / remove his own objects, not any objects on the map X-Git-Tag: xonotic-v0.6.0~35^2~18^2~194 X-Git-Url: http://de.git.xonotic.org/?a=commitdiff_plain;h=2b12c377c733222e225acab55481af8509e27982;p=xonotic%2Fxonotic-data.pk3dir.git Only allow a player to edit / remove his own objects, not any objects on the map --- diff --git a/qcsrc/server/mutators/sandbox.qc b/qcsrc/server/mutators/sandbox.qc index ea41dcea3..8c94ed3aa 100644 --- a/qcsrc/server/mutators/sandbox.qc +++ b/qcsrc/server/mutators/sandbox.qc @@ -86,7 +86,7 @@ MUTATOR_HOOKFUNCTION(sandbox_PlayerCommand) { makevectors(self.v_angle); WarpZone_TraceLine(self.origin + self.view_ofs, self.origin + self.view_ofs + v_forward * autocvar_g_sandbox_editor_distance_edit, MOVE_NORMAL, self); - if(trace_ent.classname == "object") + if(trace_ent.classname == "object" && trace_ent.realowner == self) { if(autocvar_g_sandbox_info) print(strcat(self.netname, " removed an object at origin ", vtos(trace_ent.origin), "\n")); @@ -112,7 +112,7 @@ MUTATOR_HOOKFUNCTION(sandbox_PlayerPreThink) crosshair_trace_plusvisibletriggers(self); float candrag; - if(trace_ent.classname == "object" && vlen(trace_ent.origin - self.origin) <= autocvar_g_sandbox_editor_distance_edit) + if(trace_ent.classname == "object" && trace_ent.realowner == self && vlen(trace_ent.origin - self.origin) <= autocvar_g_sandbox_editor_distance_edit) candrag = TRUE; // object can be picked up if(Drag(trace_ent, candrag)) // execute dragging if(autocvar_g_sandbox_info)