X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fcommon%2Fvehicles%2Fsv_vehicles.qc;h=5d864b1b5382c7dfd6ce0d8e0ec428f6e7a47ec0;hb=bc4be8c518a62d8ae09227114c32a90133d0fde8;hp=111c7e795629a5b373916fc30f7f034303b628e2;hpb=4217ea623aa4a6c6eb6b59728e5872b7fb9d0702;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/common/vehicles/sv_vehicles.qc b/qcsrc/common/vehicles/sv_vehicles.qc index 111c7e795..5d864b1b5 100644 --- a/qcsrc/common/vehicles/sv_vehicles.qc +++ b/qcsrc/common/vehicles/sv_vehicles.qc @@ -450,7 +450,7 @@ void vehicles_reset_colors(entity this, entity player) this.velocity = '0 0 0'; this.effects = eff; - Vehicle info = Vehicles_from(this.vehicleid); + Vehicle info = this.vehicledef; //REGISTRY_GET(Vehicles, this.vehicleid); info.vr_setcolors(info, this); } @@ -741,7 +741,7 @@ void vehicles_damage(entity this, entity inflictor, entity attacker, float damag antilag_clear(this, this); - Vehicle info = Vehicles_from(this.vehicleid); + Vehicle info = this.vehicledef; //REGISTRY_GET(Vehicles, this.vehicleid); info.vr_death(info, this); vehicles_setreturn(this); } @@ -839,6 +839,7 @@ void vehicles_exit(entity vehic, bool eject) WriteByte (MSG_ONE, SVC_SETVIEWPORT); WriteEntity( MSG_ONE, player); + // NOTE: engine networked WriteByte (MSG_ONE, SVC_SETVIEWANGLES); WriteAngle(MSG_ONE, 0); WriteAngle(MSG_ONE, vehic.angles_y); @@ -852,7 +853,7 @@ void vehicles_exit(entity vehic, bool eject) set_movetype(player, MOVETYPE_WALK); player.effects &= ~EF_NODRAW; player.teleportable = TELEPORT_NORMAL; - player.alpha = 1; + player.alpha = default_player_alpha; player.PlayerPhysplug = func_null; player.vehicle = NULL; player.view_ofs = STAT(PL_VIEW_OFS, player); @@ -931,7 +932,7 @@ void vehicles_touch(entity this, entity toucher) } if(this.play_time < time) { - Vehicle info = Vehicles_from(this.vehicleid); + Vehicle info = this.vehicledef; //REGISTRY_GET(Vehicles, this.vehicleid); info.vr_impact(info, this); } @@ -976,7 +977,7 @@ void vehicles_enter(entity pl, entity veh) || (pl.vehicle) ) { return; } - Vehicle info = Vehicles_from(veh.vehicleid); + Vehicle info = veh.vehicledef; //REGISTRY_GET(Vehicles, veh.vehicleid); if(autocvar_g_vehicles_enter) // vehicle's touch function should handle this if entering via use key is disabled (TODO) if(veh.vehicle_flags & VHF_MULTISLOT) @@ -1081,6 +1082,7 @@ void vehicles_enter(entity pl, entity veh) WriteByte (MSG_ONE, SVC_SETVIEWPORT); WriteEntity(MSG_ONE, veh.vehicle_viewport); + // NOTE: engine networked WriteByte (MSG_ONE, SVC_SETVIEWANGLES); if(veh.tur_head) { @@ -1115,7 +1117,7 @@ void vehicles_think(entity this) if(this.owner) STAT(VEHICLESTAT_W2MODE, this.owner) = STAT(VEHICLESTAT_W2MODE, this); - Vehicle info = Vehicles_from(this.vehicleid); + Vehicle info = this.vehicledef; //REGISTRY_GET(Vehicles, this.vehicleid); info.vr_think(info, this); vehicles_painframe(this); @@ -1188,7 +1190,7 @@ void vehicles_spawn(entity this) }); - Vehicle info = Vehicles_from(this.vehicleid); + Vehicle info = this.vehicledef; //REGISTRY_GET(Vehicles, this.vehicleid); info.vr_spawn(info, this); vehicles_reset_colors(this, NULL); @@ -1256,6 +1258,7 @@ bool vehicle_initialize(entity this, Vehicle info, bool nodrop) this.damagedbycontents = true; IL_PUSH(g_damagedbycontents, this); this.vehicleid = info.vehicleid; + this.vehicledef = info; this.PlayerPhysplug = info.PlayerPhysplug; this.event_damage = func_null; this.event_heal = func_null;