Come da titolo , ecco un template con script per il riarmo della fanteria.
Ecco il download:
http://www.multiupload.nl/KBQIA6LV7O (aggiornato 04/09/2012)
Template Casse e Script riarmo
- Giallustio
- Colonel

- Messaggi: 2263
- Iscritto il: dom feb 27, 2011 1:43 pm
- Località: Genova
L'idea è buona, molto buona 
Ho dato un'occhiata veloce al codice e non è male come inizio.
Non ho idea delle tue intenzioni, ma se hai voglia di migliorare sotto il profilo dell'editing posso darti qualche consiglio, magari partendo proprio da questo tuo lavoretto dei kits
Let me know
Ho dato un'occhiata veloce al codice e non è male come inizio.
Non ho idea delle tue intenzioni, ma se hai voglia di migliorare sotto il profilo dell'editing posso darti qualche consiglio, magari partendo proprio da questo tuo lavoretto dei kits
Let me know
Volere è potere
- Giallustio
- Colonel

- Messaggi: 2263
- Iscritto il: dom feb 27, 2011 1:43 pm
- Località: Genova
Allora sposto in Editing e inizio a scriverti un bordello di roba :P
Volere è potere
- Giallustio
- Colonel

- Messaggi: 2263
- Iscritto il: dom feb 27, 2011 1:43 pm
- Località: Genova
Inanzitutto quando crei qualcosa usa una TAG.
Per esempio io uso BTC.
Quindi mettiamo caso che la tua sia MOV allora la cartella si chiamerà:
MOV_kit
L'uso della tag è essenziale perchè evita che possano esserci conflitti quando usi materiale altrui. Ricordati di usare la tag anche per le definizioni "pubbliche". Ti faccio un esempio per capire.
Abbiamo uno script che dopo vari calcoli arriva a definire una variabile:
a = 5 + 2;
In questo caso il nome della variabile non sarà semplicemente "a" bensi:
MOV_a = 5 + 2;
E fino a qui tutto semplice
Altra cosa essenziale è l'init.sqf: cerca di renderlo il più semplice e "veloce" possibile.
Creati dentro la cartella l'init dello script pack ed esegui solo quello. Esempio:
init.sqf
MOV_kit\MOV_init.sqf
Tutto chiaro fin qui?
Per esempio io uso BTC.
Quindi mettiamo caso che la tua sia MOV allora la cartella si chiamerà:
MOV_kit
L'uso della tag è essenziale perchè evita che possano esserci conflitti quando usi materiale altrui. Ricordati di usare la tag anche per le definizioni "pubbliche". Ti faccio un esempio per capire.
Abbiamo uno script che dopo vari calcoli arriva a definire una variabile:
a = 5 + 2;
In questo caso il nome della variabile non sarà semplicemente "a" bensi:
MOV_a = 5 + 2;
E fino a qui tutto semplice
Altra cosa essenziale è l'init.sqf: cerca di renderlo il più semplice e "veloce" possibile.
Creati dentro la cartella l'init dello script pack ed esegui solo quello. Esempio:
init.sqf
Codice: Seleziona tutto
_mov_script = [MOV_box] execVM "MOV_kit\MOV_init.sqf";Codice: Seleziona tutto
_box = _this select 0;
if (isServer) then {if (isClass(configFile >> "cfgPatches" >> "acre_main")) then {_ammo_acre = "ACRE_Radiobox" createVehicle [(getpos _box select 0) + 1,(getpos _box select 1) + 1,0];_dir = getDir Acre;_ammo_acre setDir _dir;};};
_box addAction [("<t color=""#00FF00"">") + ("Prendi Occhiali VN") + "</t>","KIT\Kit_NV.sqf",[], 7, true, false, "", "isNull (unitBackpack player) && !([player] call ACE_fnc_HasRuck)"];
bla bla bla
Volere è potere
- Giallustio
- Colonel

- Messaggi: 2263
- Iscritto il: dom feb 27, 2011 1:43 pm
- Località: Genova
Ho letto qualcosa che non mi piace...."block note"
Usi notepad++ vero?????
Usi notepad++ vero?????
Volere è potere
- Giallustio
- Colonel

- Messaggi: 2263
- Iscritto il: dom feb 27, 2011 1:43 pm
- Località: Genova
C'è anche il linguaggio per la sintassi di arma 
Volere è potere
Ok , Modificato e aggiunto qualcosina...ora rimane un unico bug, quando si prende il kit del medico se non si getta prima la borsa non è possibile prendere altri kit , e inoltre ogni volta che si prende questo kit vengono raddoppiati gli oggetti nella sacca. Ovviamente uno non è che in partita si prende 20mila kit medici xD , ma se si evita meglio asd
Link aggiornato
Link aggiornato
Ultima modifica di Movocos il gio ago 30, 2012 8:10 pm, modificato 1 volta in totale.
- Giallustio
- Colonel

- Messaggi: 2263
- Iscritto il: dom feb 27, 2011 1:43 pm
- Località: Genova
Piano piano arriviamo anche a quello! Ora mangio e mi doccio se no non riesco a giocare dopo! Appena ho un secondo andiamo avanti 
Volere è potere
[quote="Movocos"]
Ok , Modificato e aggiunto qualcosina...ora rimane un unico bug, quando si prende il kit del medico se non si getta prima la borsa non è possibile prendere altri kit , e inoltre ogni volta che si prende questo kit vengono raddoppiati gli oggetti nella sacca. Ovviamente uno non è che in partita si prende 20mila kit medici xD , ma se si evita meglio asd
Link aggiornato
[/quote]
Non ho visto lo script lo sto scaricando, non è che ti sei scordato il comando per rimuovere gli zaini prima di mettere quello che scegli tu?
Se non erro è
o
EDIT: ah mov comincia anche ad impararti ad andare a capo nei punti giusti, facendolo faciliterai (a te e agli altri) la lettura del codice di modo anche da beccare più semplicemente gli errori u.u
Ok , Modificato e aggiunto qualcosina...ora rimane un unico bug, quando si prende il kit del medico se non si getta prima la borsa non è possibile prendere altri kit , e inoltre ogni volta che si prende questo kit vengono raddoppiati gli oggetti nella sacca. Ovviamente uno non è che in partita si prende 20mila kit medici xD , ma se si evita meglio asd
Link aggiornato
[/quote]
Non ho visto lo script lo sto scaricando, non è che ti sei scordato il comando per rimuovere gli zaini prima di mettere quello che scegli tu?
Se non erro è
Codice: Seleziona tutto
_this removebackpackCodice: Seleziona tutto
removebackpack _this
Ultima modifica di Crasso il gio ago 30, 2012 9:04 pm, modificato 1 volta in totale.
lo zaino è considerato un arma , se fai removeallweapon player; lo leva , cmq il problema non è questo , il problema è che una volta che ho lo zaino sembra che la cassa con i kit smetta di funzionare finche non levi il backpack manualmente
- Giallustio
- Colonel

- Messaggi: 2263
- Iscritto il: dom feb 27, 2011 1:43 pm
- Località: Genova
Perchè hai preso l'addAction da una mia missione dove ho messo una condizione per non far apparire l'azione se il giocatore ha uno zaino. Non avere fretta che ci arriviamo :P
Volere è potere
- Giallustio
- Colonel

- Messaggi: 2263
- Iscritto il: dom feb 27, 2011 1:43 pm
- Località: Genova
Prima di andare avanti devo correggerti un errore 
Quando passi ad uno script un parametro con un oggetto non devi dargli nello script lo stesso nome che ha in-game.
Mi spiego meglio con gli esempi :P
Lanciamo lo script:
Dato che tu passi già il nome dell'oggetto, non è necessario rimetterlo nello script:
Questo si fa per rendere lo script "generale". Il vantaggio è che puoi usare lo stesso script per più casse senza dover fare tanti script quante sono le casse 
Next step
Passiamo all'analisi dell'addAction:
[title, filename, (arguments, priority, showWindow, hideOnUse, shortcut, condition)]
In questo caso non servono particolari condizioni, in quanto tutti i kits devono essere disponibili in qualsiasi condizione, perciò mettiamo true (sempre vera)
Analizziamo ora i vari scripts.
L'unico appunto che posso farti è questo:
Quando devi ripetere linee uguali, ti conviene usare il comando foreach.
In questo modo velocizzi il tutto 
Quando hai appreso bene tutte queste cose di basi passiamo all'ultimo step un po più difficile ma veramente figo
Ti dico solo che alla fine invece di avere 10 scripts ne avremo solo 2
Quando passi ad uno script un parametro con un oggetto non devi dargli nello script lo stesso nome che ha in-game.
Mi spiego meglio con gli esempi :P
Lanciamo lo script:
Codice: Seleziona tutto
_mov_script = [MOV_BOX] execVM "MOV_Kit\MOV_init.sqf";Codice: Seleziona tutto
_box = _this select 0;
if (isServer) then {if (isClass(configFile >> "cfgPatches" >> "acre_main")) then {_ammo_acre = "ACRE_Radiobox" createVehicle [(getpos _box select 0) + 1,(getpos _box select 1) + 1,0];_dir = getDir Acre;_ammo_acre setDir _dir;};};//Togli la variabile che non ti serve, ah questo è un commento e non viene considerato errore :P
_box addAction [("<t color=""#10ff00"">") + ("Prendi Occhiali VN") + "</t>","MOV_KIT\MOV_Kit_NV.sqf",[], 7, true, false, "", "isNull (unitBackpack player) && !([player] call ACE_fnc_HasRuck)"];
_box addAction [("<t color=""#FFF000"">") + ("Prendi Kit Team Leader Convenzionale") + "</t>","MOV_KIT\MOV_kit_SL.sqf",[], 7, true, false, "", "isNull (unitBackpack player) && !([player] call ACE_fnc_HasRuck)"];
Next step
Passiamo all'analisi dell'addAction:
[title, filename, (arguments, priority, showWindow, hideOnUse, shortcut, condition)]
Codice: Seleziona tutto
_box addAction [("<t color=""#10ff00"">") + ("Testo") + "</t>","MOV_KIT\MOV_Kit_NV.sqf",[], 7, true, false, "", "true"];Analizziamo ora i vari scripts.
L'unico appunto che posso farti è questo:
Quando devi ripetere linee uguali, ti conviene usare il comando foreach.
Codice: Seleziona tutto
{player addmagazine "200Rnd_556x45_M249";} foreach [1,2,3,4];Quando hai appreso bene tutte queste cose di basi passiamo all'ultimo step un po più difficile ma veramente figo
Ti dico solo che alla fine invece di avere 10 scripts ne avremo solo 2
Volere è potere

