Armed-Assault.de Twitter
Antwort
 
Themen-Optionen Ansicht
Alt 31.08.2013, 02:16   #1 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Rockhount
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard setVehicleVarName sinnvoll?

Ich bearbeite gerade ein paar alte Skripte und bin dabei auf etwas gestoßen, das sich mir nicht ganz erschließt. Es geht dabei um das Zusammenspiel von publicvariable und setVehicleVarName. Hier ein Beispiel:
Code:
convoytruck = "jailbus" createVehicle getPos _pos;
convoytruck setVehicleInit
"
    convoytruck = this;
    this setVehicleVarName ""convoytruck"";
";    
processinitcommands;
publicvariable "convoytruck";
Wozu sollte der Bus und die globale Variable gleich genannt werden? Wenn der Name des Objekts und die Variable(die auf das Objekt verweist) gleich heißen, dann ist doch die Durchführung beider Methoden unnötig? publicvariable sollte hier doch schon reichen und folgendes auch ersetzen können:
Code:
convoytruck = this;
oder?
__________________
Rockhount ist offline   Mit Zitat antworten
Alt 31.08.2013, 19:55   #2 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Rockhount
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Kann keiner etwas dazu sagen?
__________________
Rockhount ist offline   Mit Zitat antworten
Alt 31.08.2013, 20:49   #3 (permalink)
Armed-Assault.de Team10 Jahre hx3
500 Beiträge1000 Beiträge2.500 Beiträge
 
Benutzerbild von Moerderhoschi
 
Registriert seit: 01.07.2006
Ort: Kabul
Alter: 32
Beiträge: 2.662
Standard

Zitat von BIWiki

Sets the name of the variable which contains a reference to this object. It is necessary in MP to change the variable content after a respawn. When you only use 'myVar = <vehicle>', you'll just have a normal variable, when you use this command as well, 'myVar' will be the name for the vehicle, i.e. if you have other variables containing the vehicle, they'll now return 'myVar' and not WEST ...
Note: This command does not set 'myVar' to contain the vehicle, this has to be done separately.

Also ich interpretiere das so dass trotzdem weiterhin eine Variable definiert werden muss, also zusatzlich zum SetVehicleVarName. Steht auch so im Example im BIWiki

Zitat von BIWiki

_Object="M1A1" CreateVehicle (GetPos Player);
_VarName="MYTANK";
_Object SetVehicleVarName _VarName;
_Object Call Compile Format ["%1=_This ; PublicVariable ""%1""",_VarName];

Habe mit dem Befehl bis dato sehr wenig gearbeitet deswegen kann ich Dir leider nicht mehr als meine Interpretation des Wikieintrags bieten.

gruß
hoschi
__________________


Moerderhoschi ist offline   Mit Zitat antworten
Alt 01.09.2013, 00:59   #4 (permalink)
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

Ohne setVehicleVarName enthält convoytruck die ID des Fahrzeuges.

Mit setVehicleVarName enthält convoytruck den Vehicle-Namen convoytruck. Entspricht dem Namen, den man einem Objekt im Editor geben kann.
Vienna ist offline   Mit Zitat antworten
Alt 01.09.2013, 01:51   #5 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Rockhount
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Ja, das hatte ich mir schon gedacht. Dann ist in diesen Fall also das hier:
Code:
convoytruck setVehicleInit
"
     convoytruck = this;
     this setVehicleVarName ""convoytruck""; 
";
processinitcommands;
komplett unnötig.
__________________
Rockhount ist offline   Mit Zitat antworten
Alt 01.09.2013, 07:39   #6 (permalink)
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

Das Vorhandensein des Befehls wird ja einen Grund haben.

Wenn es z.B. notwendig ist ein Objekt mit dem Namen und nicht mit der ID anzusprechen? Wie z.B. bei Moerderhoschis Post mit call compile?

Vielleicht kann man damit einen bereits vergebenen Namen einem neuen Objekt zuweisen? Keine Ahnung ob man zuvor objNull anwenden muss.
Vienna ist offline   Mit Zitat antworten
Alt 01.09.2013, 11:51   #7 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Rockhount
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Es geht mir nur um den Befehl publicvariable und ob es alles andere ersetzen könnte. Ich denke, es macht kein Unterschied, ob man nun die Variable oder das Objekt direkt anspricht. Ich bin nur kein Freund von processinitcommands. Und das Verbreiten von nur einer Variable, anstelle von ganzen Codezeilen, sollte auch der Performance gut tun.
__________________
Rockhount ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Fragen zum Editor chris2110 Editing & Scripting 1014 25.08.2014 23:25


Kontakt - HX3.de - Archiv - Nach oben

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias



SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116