Thema: Moral
Einzelnen Beitrag anzeigen
Alt 13.04.2014, 19:09   #1 (permalink)
JSR
500 Beiträge1000 Beiträge
 
Registriert seit: 29.10.2008
Beiträge: 1.192
Standard Moral

Moin.
Bin zur Zeit viel am scripten was Arma angeht. Von Selbstmordattentätern zur einzelnen Moral der Zivilisten. Lasse mich eigentlich von VBS inspirieren und um zugleich weiter in der Materie "Programmiersprache" einzudringen.

Ich habe ein GUI erstellt, welches auch gut funktioniert, dabei gibt es also keine Probleme. In dem GUI, welches via Actionmenü aufrufbar ist, kann man den Zivilisten vor einem gewisse Fragen stellen. Ich probiere als erstes ein einfaches "How are you?" zu lösen.

Ich habe es zwar hinbekommen, dass er eine Antwort gibt, kann den Wert aber nicht speichern.

Um es ersteinmal zu zeigen:


Habe es hinbekommen!



War einfacher als erwartet muss ich zugeben. Habe entdeckt, dass es einen Moral Wert gibt. Für alle, die zufällig mal hier vorbei stoßen:

Main.sqf
Code:
while {true} do {

CIV_Object = nearestObject [player, "Civilian"];
_dist = CIV_Object distance player;


if (_dist < 2 && cursorTarget == CIV_Object) then {CIV_Menu = player addAction ["Interaction", "Int.sqf"]; WaitUntil {CIV_Object distance Player > 3};
}
else {
player removeAction CIV_Menu;
player removeAction CIV_Menu;
};
};


Moral.sqf

Code:
_a = morale Civ_object;

switch (true) do {





if (_a > 0.2) then {confusedT = True;};
if (_a >= 0.4) then {ConfusedT = false; OkayT =true;};
if (_a >= 0.6) then {OkayT = false; FineT =true;};
if (_a > 0.8) then {FineT = false; happyT = true}; 




case (_a <= 0.2): {
HintSilent "I'm mad.";};

case (_a > 0.2 && confusedT ): {
HintSilent "I'm confused";};

case (_a >= 0.4 && okayT): {
HintSilent "I'm okay";};

case (_a >= 0.6 && FineT): {
HintSilent "I'm fine";};

case (_a >= 0.8 && happyT): {
HintSilent "I'm happy";}; 

};

Geändert von JSR (13.04.2014 um 19:43 Uhr).
JSR ist offline