Armed-Assault.de Twitter
 
 
Themen-Optionen Ansicht
Alt 24.01.2016, 20:10   #1 (permalink)
Newbie
 
Registriert seit: 01.02.2015
Beiträge: 27
Standard Classname Ansprechen

Hallo Leute

Ich habe jetzt einiege zeit gesucht bin aber noch nicht fündig geworden...
Ich habe ein kleines Script für die anpassung meines Gears geschrieben:


_unit = _this select 0;
_caller = _this select 1;
_action = _this select 2;

comment "Remove existing items";
removeAllWeapons _caller;
removeAllItems _caller;
removeAllAssignedItems _caller;
removeUniform _caller;
removeVest _caller;
removeBackpack _caller;
removeHeadgear _caller;
removeGoggles _caller;

comment "Add containers";
_caller forceAddUniform "rhs_uniform_flora_patchless_alt";
_caller addItemToUniform "FirstAidKit";
for "_i" from 1 to 2 do {_caller addItemToUniform "rhs_30Rnd_545x39_AK";};
_caller addVest "rhs_vydra_3m";
for "_i" from 1 to 7 do {_caller addItemToVest "rhs_30Rnd_545x39_AK";};
_caller addHeadgear "rhs_6b27m_green_bala";

comment "Add weapons";
_caller addWeapon "rhs_weap_ak74m";
_caller addWeapon "Binocular";

comment "Add items";
_caller linkItem "ItemMap";
_caller linkItem "ItemCompass";
_caller linkItem "ItemWatch";
_caller linkItem "ItemRadio";


Jetzt möchte ich aber das Gear aller einheiten einer bestimmten Klasse anpassen z.B. "O_Soldier_F".
Ich weiß nicht ob es wichtig ist, aber das ganze wird durch ein "addAction" Befehl ausgelöst.

Kann mir da jemand helfen ??
Ich bin Dankbar für jeden Brauchbaren vorschlag


L.g.: Dunkelmesser
Dunkelmesser ist offline  
Alt 24.01.2016, 22:11   #2 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Registriert seit: 10.10.2006
Beiträge: 263
Standard

du kanst abfragen mit

Objekt iskindof "O_Soldier_F";

abfragen ob es einer ist dies einfach für allunits

Code:
{_x iskindof "O_Soldier_F"}foreach allunits
Nokman ist offline  
Alt 24.01.2016, 22:43   #3 (permalink)
Newbie
 
Registriert seit: 01.02.2015
Beiträge: 27
Standard

Wenn ich das richtig verstanden habe wird nur abgefragt ob der caller ein O_Soldier_F ist oder nicht ?? Richtig ??
Dunkelmesser ist offline  
Alt 25.01.2016, 08:31   #4 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Registriert seit: 10.10.2006
Beiträge: 263
Standard

allunits - Alle einheiten die es auf der map gibt in eine array

foreach nimt nun jeden einzelnen punkt der array nacheinander

Dies ist _x (der Punkt weche gerade ausgelesen wird)

iskindof Fragt nach ob das Objekt zu den clasnamen passt


als beispiel

Code:
{
 if (_x iskindof "O_Soldier_F") then {
  _x setdamage 1;
 };
}foreach allunits
somit wird jeder getötete der ein O_Soldier_f ist


---

Wie Rufst du deinen Script Oben denn auf?
Nokman ist offline  
Alt 25.01.2016, 18:03   #5 (permalink)
Newbie
 
Registriert seit: 01.02.2015
Beiträge: 27
Standard

Vielen dank...
endlich funktioniert alles

ich rufe das script so auf:

Trigger:
ON ACT. _null = [] execVM "Units\Test.sqf"
Dunkelmesser ist offline  
Alt 25.01.2016, 18:09   #6 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.109
Standard

Aha, und wieso durch einen Trigger? Du weißt, dass JEDER das Script dann lädt.
Ausrüstung ist global, also lasse es nur durch den Server ausführen.

Du willst es doch sofort zum Spielbeginn auf alles anwenden, wenn ich das richtig verstanden habe. Warum läßt du das script nicht in der ServerInit ausführen?
__________________
Bewegende Momente bei ArmA 3
Drunken Officer ist offline  
Alt 25.01.2016, 18:25   #7 (permalink)
Newbie
 
Registriert seit: 01.02.2015
Beiträge: 27
Standard

Gute idee

Dann habe ich aber nochmal eine fragen:

Wie bekomme ich es hin das das script in bestimmten abständen erneut ausgefürt wird ??

Wäre gut wenn ihr mir nochmal helfen würdet ??

Mfg.: Dunkelmesser


Dunkelmesser ist offline  
Alt 25.01.2016, 20:06   #8 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.109
Standard

siehe spawn script zombie
__________________
Bewegende Momente bei ArmA 3
Drunken Officer ist offline  
Alt 25.01.2016, 21:39   #9 (permalink)
Newbie
 
Registriert seit: 01.02.2015
Beiträge: 27
Standard

Danke
Funktioniert

Einmal muss ich euch noch nerven:
Ich habe jetzt folgendes in meinem script stehen:
{
if (_x iskindof "O_Soldier_F") then {

};
}foreach allunits

Klappt jetzt auch alles
nun möchte ich aber nicht nur O_Soldier_F sondern auch noch O_soldier_M_F ansprechen...
könnt ihr mir da weiter helfen ??
habe jetzt vieles ausprobiert aber es funktioniert einfach nicht ??

Danke für eure hilfe

Mfg.: Dunkelmesser
Dunkelmesser ist offline  
Alt 25.01.2016, 21:59   #10 (permalink)
10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Buliwyf
 
Registriert seit: 11.03.2005
Ort: HH
Alter: 52
Beiträge: 1.930
Standard

Code:
if (_x iskindof "O_Soldier_F" OR _x iskindof "O_soldier_M_F") then {
__________________
Buliwyf ist offline  
 


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
Neuer Classname vom Ifrit Sol.LrMartyn Editing & Scripting 6 27.03.2013 13:00
Variable in laufenden Script ansprechen spaccy Editing & Scripting 1 13.10.2011 01:03
Einzelne Reifen platzen lassen bzw. ansprechen? Big Fan Editing & Scripting 8 10.06.2011 10:46
alle Fahr- und Flugzeuge ansprechen? GER_CJ-187 Editing & Scripting 11 17.08.2010 18:33
Classnames WEST OpA Muecke Editing & Scripting 9 29.06.2010 14:37


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 117 118 119