Hi,
ich habe bei meinem BalloonWheels Script im MP ein Problem festgestellt.
Wenn jemand auf dem Schlepper sitzt(egal ob Host oder Client) und die Räder verbreitert, ist dies nur für den sichtbar, der drauf sitzt.
Ergo vermute ich, das das Script nicht MP fähig ist.
Ich habe mir also mal ein anderes Script her genommen und versucht zu verstehen wie das funktioniert.
Es soll eigentlich nur der boolsche Wert für balloonWheelsState (true / false) an die anderen Mitspieler übergeben werden. Denke ich
Mein Script sieht dabei so aus:
[lua]
-- Network Stuff
balloonWheelsEvent = {};
balloonWheels_mt = Class(balloonWheelsEvent, Event);
InitEventClass(balloonWheels, "balloonWheelsEvent");
function balloonWheelsEvent:emptyNew()
local self = Event:new(balloonWheels_mt);
return self;
end;
function balloonWheelsEvent:new(vehicle, state)
local self = balloonWheelsEvent:emptyNew()
self.vehicle = vehicle;
self.balloonWheelsState = state;
return self;
end;
function balloonWheelsEvent:readStream(streamId, connection)
local id = streamReadInt32(streamId);
self.balloonWheelsState = streamReadInt8(streamId);
self:run(connection);
end;
function balloonWheelsEvent:writeStream(streamId, connection)
streamWriteInt32(streamId, networkGetObjectId(self.vehicle));
streamWriteInt8(streamId, self.balloonWheelsState);
end;
function balloonWheelsEvent:run(connection)
self.vehicle:balloonWheelsState(self.state, true);
end;
function balloonWheelsEvent.sendEvent(vehicle, state, noEventSend)
if noEventSend == nil or noEventSend == false then
if g_server ~= nil then
g_server:broadcastEvent(balloonWheelsEvent:new(vehicle, state), nil, nil, vehicle);
else
g_client:getServerConnection():sendEvent(balloonWheelsEvent:new(vehicle,state));
end;
end;
end;
[/lua]
Wenn ich jetzt ein MP Spiel starte, wir alles ohne Fehler geladen aber die Mitspieler können nicht auf den Schlepper wechseln und die Log bei denen wirft Fehler ohne Ende..
Zitat
C:/Users/pc/Documents/My Games/FarmingSimulator2013/mods/DeutzFahr_Agrotron7250_TTV_CE/Scripts/balloonWheels.lua(54) : attempt to call method 'balloonWheelsState' (a boolean value)
Lua: Unknown entity id: 37829 method name: delete
In Zeile 54 steht das hier:
[lua]
function balloonWheels:readStream(streamId, connection)
self:balloonWheelsState(streamReadBool(streamId), true);
end;
[/lua]
Hat da zufällig jemand einen Tipp was da nicht stimmt.
lg
Webby