PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MHQ Script


[ate]minimal
22.01.2015, 08:51
Hey jungens

Ich habs geschaft mal ohne zu fragen ein eigenständiges script geschrieben:naughty:.
(gottbinichgut):D

Es handelt sich dabei um ein MHQ script wie mans aus ner Domination kennt, ich habs von grund auf selber geschrieben und wollt mal wissen was ihr davon haltet. was man verbessern kann und ob es so überhaupt sinn macht.

Init.sqf
romeo = false;
beta = false;


while {true} do {

sleep 1;

script = [] execVM "MHQ.sqf";

beta = false;

waitUntil {beta};

sleep 5;
};
MHQ.sqf


waitUntil {speed F1 <=1 && vehicle player != F1};

MHQauf = F1 addaction ["MHQ aufbauen", "

if (player in F1) then {moveout player; hint ""Du Darfst nicht im Fahrzeug sein"";} else {
F1 lock true;
Tafel = createVehicle [""Land_MapBoard_F"", position player, [], 0, ""none""];
Tafel setPos (F1 modelToWorld [-5,2,-2.2]);
Tafel setDir (([Tafel, F1] call BIS_fnc_dirTo) - (160));
sleep 1;
Kiste = createVehicle [""Box_IND_WpsSpecial_F"", position player, [], 0, ""none""];
Kiste setPos (F1 modelToWorld [-2,0,-2.2]);
Kiste setDir ([Kiste, F1] call BIS_fnc_dirTo);
F1 removeAction MHQauf;
romeo=true;
};
"];

Waituntil {romeo};
romeo = false;

sleep 5;

MHQab = F1 addaction ["MHQ abbauen","
F1 removeAction MHQab;
sleep 2;
deleteVehicle Tafel;
sleep 1;
deletevehicle Kiste;
beta=true;
sleep 1;
F1 lock false;
hint ""MHQ Einsatzbereit"";
"];

waituntil {beta};
sleep 2;

das script funktioniert soweit im singelplayer, nur hab ich net soviel ahnung was die performenc angeht bei solch einem script.
und könnte man es (also ich) eventuell in ein mp fähiges script umwandeln???

mfg Mini

Drunken Officer
22.01.2015, 09:55
AddAction ist ein lokales Script.

Also wenn der Server eine AA-Befehl ausführt wirst du es nicht sehen. Du musst es über eine Varibale machen.
Desweiteren musst du die Variablen romeo und beta mit publicVariableServer an den Server senden, damit dieser den neuen Status der Variablen kennt, denn AA ist lokal.
(für dich zum Verständis, der Rechner wo der AA Befehl ausgelöst wurde, kennt den Status, der Rest nicht)

[ate]minimal
22.01.2015, 10:53
ja das mit denn variablen hab ich noch nciht so drauf das kommt dann im nächsten schritt :D

aber rein vom grund aufbau, für den singelplayer, is es ok??!?!?!?!?!

Saint
22.01.2015, 11:46
falls Du auf Nummer sicher gehen willst und doch irgendwann mal Multiplayer editierst:

init.sqf:
if (!(isNull player)) then {
fnc_addActionMP = {
_this addAction [Deine Action...];
};
};
[F1,"fnc_addActionMP",nil,true] spawn BIS_fnc_MP;

letzter Code heftet die "addAction" an F1