HX3 Foren

HX3 Foren (https://hx3.de/)
-   Editing & Scripting (https://hx3.de/editing-scripting-167/)
-   -   Frage zu Call compile format (https://hx3.de/editing-scripting-167/frage-call-compile-format-18384/)

malibu.stacey 28.12.2009 23:53

Frage zu Call compile format
 
Also, ich werkel schon den ganzen abend an einem Heli spawn script rum, funzt alles wunderbar bis auf eine Kleinigkeit:

Code:

call compile format ["%1 = createVehicle [_MAL_TVehicleType,[(getPos _MAL_TStartPos select 0),(getPos _MAL_TStartPos select 1),_MAL_T_Height], [], 0, "NONE"]",_MAL_THeli_Name];
Das gibt mir den Fehler Type String, expected Code aus.

DAS funktioniert aber:
Code:

call compile format ["%1 = createGroup west",_MAL_THeliGroup_Name];
call compile Format ["_MAL_THeliGroup = %1",_MAL_THeliGroup_Name];

Hier mal das Script im Ganzen:
Code:


//create Transport Vehicle

//Array [[Vehicle,[name V]],[[Pilot,Gunner,Gunner2],[name P, name G1, name G2],[StartPos,Height],[Group]]

private ["_MAL_TVehicleType","_MAL_THeli_Name","_MAL_THeli","_MAL_TPilotType","_MAL_TGunner1Type","_MAL_TGunner2Type","_MAL_TPilot_Name","_MAL_TGunner1_Name","_MAL_TGunner2_Name","_MAL_TStartPos","_MAL_T_Height","_MAL_THeliGroup_Name","_MAL_THeliPilot","_MAL_TGunner1","_MAL_TGunner2","_MAL_THeliGroup","_MAL_MissionHeight"];

_MAL_TVehicleType    = _this select 0 select 0;
_MAL_THeli_Name      = _this select 0 select 1;
_MAL_TPilotType      = _this select 1 select 0 select 0;
_MAL_TGunner1Type    = _this select 1 select 0 select 1;
_MAL_TGunner2Type    = _this select 1 select 0 select 2;
_MAL_TPilot_Name      = _this select 1 select 1 select 0;
_MAL_TGunner1_Name    = _this select 1 select 1 select 1;
_MAL_TGunner2_Name    = _this select 1 select 1 select 2;
_MAL_TStartPos        = _this select 2 select 0;
_MAL_T_Height        = _this select 2 select 1;
_MAL_THeliGroup_Name  = _this select 3 select 0;


if (_MAL_THeliGroup_Name != "") then {

call compile format ["%1 = createGroup west",_MAL_THeliGroup_Name];
call compile Format ["_MAL_THeliGroup = %1",_MAL_THeliGroup_Name];
                                };
                               

 _MAL_THeli = createVehicle [_MAL_TVehicleType,[(getPos _MAL_TStartPos select 0),(getPos _MAL_TStartPos select 1),_MAL_T_Height], [], 0, "NONE"];
 _MAL_THeli setDir (getDir _MAL_TStartPos);
  //call compile format ["%1 = createVehicle [_MAL_TVehicleType,[(getPos _MAL_TStartPos select 0),(getPos _MAL_TStartPos select 1),_MAL_T_Height], [], 0, "NONE"]",_MAL_THeli_Name];
  //call compile format ["_MAL_THeli = %1",_MAL_THeli_Name];
  //_MAL_THeli setDir (getDir _MAL_TStartPos);
 
  _MAL_THeliPilot = _MAL_TPilotType createUnit [[(getPos _MAL_TStartPos select 0),(getPos _MAL_TStartPos select 1),
  _MAL_T_Height], _MAL_THeliGroup, format ["%1=this", _MAL_TPilot_Name]];
  call compile format ["_MAL_THeliPilot = %1",_MAL_TPilot_Name];
  _MAL_THeliPilot moveInDriver _MAL_THeli;

if (_MAL_TGunner1Type != "") then {
   
    _MAL_TGunner1 = _MAL_TGunner1Type createUnit [[(getPos _MAL_TStartPos select 0),(getPos _MAL_TStartPos select 1),
      _MAL_T_Height], _MAL_THeliGroup, format ["%1=this",_MAL_TGunner1_Name]];
    call compile format ["_MAL_TGunner1 = %1",_MAL_TGunner1_Name];
      _MAL_TGunner1 moveInTurret  [_MAL_THeli,[0]];
   
    if (_MAL_TGunner2Type != "") then {
   
    _MAL_TGunner2 = _MAL_TGunner1Type createUnit [[(getPos _MAL_TStartPos select 0),(getPos _MAL_TStartPos select 1),
      _MAL_T_Height], _MAL_THeliGroup, format ["%1=this",_MAL_TGunner2_Name]];
    call compile format ["_MAL_TGunner2 = %1",_MAL_TGunner2_Name];
      _MAL_TGunner2 moveInTurret [_MAL_THeli,[1]];   
                                      };
                                };

Wird durch diese Funktion aufgerufen:
Code:

MAL_THeliArray = [["UH1Y","MAL_THeli"],[["USMC_Soldier_Pilot","USMC_Soldier_Pilot","USMC_Soldier_Pilot"],["MAL_THeliPilot","MAL_TGunner1","MAL_TGunner2"]],[MAL_THeli_StartPos,0],["MAL_THeliGroup"]];
MAL_THeliArray execVM "MAL_THeliCreate.sqf";

Weiß jemand, warum call compile bei der ersten Zeile ned funzt? Macht mich ganz wuschig...:ugly:

Bin für jedwede Erleuchtung dankbar!

Oh, und wenn jemand ein gutes Heli Landescript kennt, bitte ein kurzen Hinweis geben, wo man ein solches Prachstück finden kann :D

Buliwyf 29.12.2009 01:18

Code:

call compile format ["%1 = createVehicle [_MAL_TVehicleType,[(getPos _MAL_TStartPos select 0),(getPos _MAL_TStartPos select 1),_MAL_T_Height], [], 0, 'NONE']",_MAL_THeli_Name];
...behaupte ich jetzt einfach mal... ;)

Und Heliscript von Mandoble... damit kannst auch auf Hausdächern landen...

malibu.stacey 29.12.2009 18:58

Dankeschön!!! Funzt jetzt wunderbar! Und ebenfalls Danke für den Link zum Mandoble Script, hab gar ned gewußt, daß er das schon für Arma 2 rausgebracht hat. Werd meinem Heli jetzt mal Beine machen :daumen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:45 Uhr.

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