vehicle sync OHNE FEHLER
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import game, { VehicleData } from '../index';
|
||||
import { IVehicle, EntityType, IEntity, VehicleSeat } from '../game';
|
||||
import game from '../index';
|
||||
import { IVehicle, EntityType, IEntity, VehicleSeat, DoorState } from '../game';
|
||||
import { parseJson } from '../util';
|
||||
import { VehicleData } from '../game';
|
||||
|
||||
game.events.add('SERVER:Vehicle:UpdateData', (vehId, dataStr) => {
|
||||
var data: VehicleData = parseJson(dataStr);
|
||||
@@ -48,10 +49,11 @@ function setVehicleData(veh: IVehicle, data: VehicleData): void {
|
||||
return;
|
||||
}
|
||||
|
||||
if (data === null) {
|
||||
if (!data) {
|
||||
data = {
|
||||
EngineState: false,
|
||||
Locked: false
|
||||
Locked: false,
|
||||
Doors: {}
|
||||
};
|
||||
}
|
||||
|
||||
@@ -64,6 +66,19 @@ function setVehicleData(veh: IVehicle, data: VehicleData): void {
|
||||
veh.setUndriveable(!engineState);
|
||||
}
|
||||
|
||||
var doors = Object.keys(data.Doors);
|
||||
|
||||
doors.forEach(door => {
|
||||
var doorNumber = parseInt(door);
|
||||
var doorState = <number>data.Doors[doorNumber];
|
||||
|
||||
if (doorState === DoorState.DoorOpen.valueOf()) {
|
||||
veh.setDoorOpen(doorNumber, false, false);
|
||||
} else if (doorState === DoorState.DoorClosed.valueOf()) {
|
||||
veh.setDoorShut(doorNumber, false);
|
||||
}
|
||||
});
|
||||
|
||||
var locked: boolean = data.Locked;
|
||||
veh.setDoorsLocked(locked);
|
||||
}
|
||||
Reference in New Issue
Block a user