sript pour compter des pertes civiles

Pour les Masochistes Éditeurs de missions
Répondre
[OTEA] davidbzh
Chouchou
Chouchou
Messages : 17
Enregistré le : jeu. 20 mai 2010, 09:04

sript pour compter des pertes civiles

Message par [OTEA] davidbzh »

Salut,

Je suis une véritable quiche pour les scripts. J'ai un compagnon de galère d'édition, qui m'a posé une colle. Vous pourrez peut être me donner un coup de main.

Voila la situation, nous devons prendre d'assaut une ville remplie de vilains civils armés et de gentils civils désarmés. Pour l'instant c'est pas compliqué.

La mission est un échec si trois civils désarmés sont tués, aux amateurs de gachette facile ou je tire d'abord et je cause ensuite s'abstenir.

L'idée est intéressante mais je hisse le drapeau blanc. Vous pourrez peut être me donner quelques pistes.
Image

Avatar du membre
=[TTK]= Freshmeat
Retraité
Retraité
Messages : 474
Enregistré le : lun. 1 mars 2010, 13:49

Re: sript pour compter des pertes civiles

Message par =[TTK]= Freshmeat »

Tu peux t'inspirer des missions "Utes à vendre" et "[CO06]Ambushconvoy".

J'ai utilisé une variable publique initialisé à 0 par le seveur.
Dans l'init des civils à ne pas tuer, j'ai ajouté un EH killed qui incrémente cette variable.
Sur la map, j'ai ajouté un déclencheur qui compare mon compteur au nombre maximum de civils 'tuables'.

Attention : si tes civils sont hostiles, tes IA considèreront tout ce qui sera ajouté dynamiquement sur la carte comme hostile (vehicules, caisses de munitions, ...).
Les gens n'accordent guère d'importance à la vie, la preuve : quand ils la perdent, ils ne la réclament jamais.
[Jean Deluca]
Image

Avatar du membre
Camille Caz
Grand Gourou
Grand Gourou
Âge : 84
Messages : 1814
Enregistré le : lun. 25 janv. 2010, 22:45
Humeur : paléolithique mais presque
Localisation : près de La Rochelle

Re: sript pour compter des pertes civiles

Message par Camille Caz »

Voilà :
Soit
8 civils nommés de c1 à c8
Un déclencheur nommé "zone" dans lequel se trouvent les civils. Activation : civil ; répétition
Un script.sqs

Code : Tout sélectionner

_zone = zone;
arraycivils = [c1, c2, c3, c4, c5, c6, c7, c8];
_survivants = 0;

#boucle1

~2
_civilsvivants = 0
{if (_x in (list _zone)) then {_civilsvivants = _civilsvivants + 1}} foreach arraycivils;
if (_survivants > _civilsvivants) then {hint format [ "Il reste %1 civils", _civilsvivants]};
_survivants = _civilsvivants;

?(_survivants >5): goto "boucle1";

~2
hint "trop de sang civil sur les mains. Vous avez perdu !";
final1=true; PublicVariable "final1";
exit
final1 est la variable qui déclenche le déclencheur de fin.
Je viens d'essayer, ça marche.
On n'a pas toujours ce qu'on mérite mais on ne mérite pas forcément ce qu'on a.

Avatar du membre
=[TTK]= Freshmeat
Retraité
Retraité
Messages : 474
Enregistré le : lun. 1 mars 2010, 13:49

Re: sript pour compter des pertes civiles

Message par =[TTK]= Freshmeat »

Ha lala ce Camille, quelle tête.
Je venais justement poster une réponse dans le genre....Ma solution un chouia plus complexe me permettais de compter les morts causés par les Russes et les US.
Les gens n'accordent guère d'importance à la vie, la preuve : quand ils la perdent, ils ne la réclament jamais.
[Jean Deluca]
Image

Avatar du membre
Camille Caz
Grand Gourou
Grand Gourou
Âge : 84
Messages : 1814
Enregistré le : lun. 25 janv. 2010, 22:45
Humeur : paléolithique mais presque
Localisation : près de La Rochelle

Re: sript pour compter des pertes civiles

Message par Camille Caz »

=[TTK]= Freshmeat a écrit :Ma solution un chouia plus complexe
C'est normal, sinon tu ne serais pas programmeur !
On n'a pas toujours ce qu'on mérite mais on ne mérite pas forcément ce qu'on a.

Avatar du membre
=[TTK]= Freshmeat
Retraité
Retraité
Messages : 474
Enregistré le : lun. 1 mars 2010, 13:49

Re: sript pour compter des pertes civiles

Message par =[TTK]= Freshmeat »

Justement, c'est une erreur grave que de ne pas avoir tout de suite proposé ta solution, nettement plus adaptée.

Par contre, un jour il faudra que tu te mettes au sqf....
Les gens n'accordent guère d'importance à la vie, la preuve : quand ils la perdent, ils ne la réclament jamais.
[Jean Deluca]
Image

[OTEA] davidbzh
Chouchou
Chouchou
Messages : 17
Enregistré le : jeu. 20 mai 2010, 09:04

Re: sript pour compter des pertes civiles

Message par [OTEA] davidbzh »

salut,

Tu m'as tiré les oreilles Camille Caz et tu avais bien raison. J'ai bien vu ton script et je l'ai transmis à Bobe pour sa mission.

Je te remercie pour ta rapidité, moi je suis plus long à la détente :oops: .

Je te tiendrais au courant, dès qu'on aura testé sa mission.

Je suis en plus une enclume, j'avais oublié mon mot de passe. C'est maintenant réparé.

a+
Image

davidp
Pioupiou
Pioupiou
Messages : 6
Enregistré le : dim. 23 mai 2010, 18:46

Re: sript pour compter des pertes civiles

Message par davidp »

ça me met comme quoi il y a une erreur a la ligne 7 du script

Avatar du membre
Camille Caz
Grand Gourou
Grand Gourou
Âge : 84
Messages : 1814
Enregistré le : lun. 25 janv. 2010, 22:45
Humeur : paléolithique mais presque
Localisation : près de La Rochelle

Re: sript pour compter des pertes civiles

Message par Camille Caz »

Plutôt que regarder s'il ya une erreur, je te redonne le script tel qu'il fonctionne sur mon pécé.

Code : Tout sélectionner

_zone = zone;
arraycivils = [c1, c2, c3, c4, c5, c6, c7, c8];
_survivants = 0;

#boucle1

~2
_civilsvivants = 0
{if (_x in (list _zone)) then {_civilsvivants = _civilsvivants + 1}} foreach arraycivils;
if (_survivants > _civilsvivants) then {hint format [ "Il reste %1 civils", _civilsvivants]};
_survivants = _civilsvivants;
?(_survivants >5): goto "boucle1";


~2
hint "trop de sang civil sur les mains. Vous avez perdu !";
final1=true; PublicVariable "final1";
exit
C'est garanti, je viens d'essayer. Dis-moi que ça marche. Vérifie les noms c1 ,c2, etc. et le nom "zone" du déclencheur
On n'a pas toujours ce qu'on mérite mais on ne mérite pas forcément ce qu'on a.

davidp
Pioupiou
Pioupiou
Messages : 6
Enregistré le : dim. 23 mai 2010, 18:46

Re: sript pour compter des pertes civiles

Message par davidp »

bonsoir j'aimerais vous envoyer ma mission, mais je ne sais pas comment je peux vous l'envoilez car la je suis ploque.
Modifié en dernier par =[TTK]= Clem le mar. 22 juin 2010, 16:55, modifié 1 fois.
Raison : Corection ortho gaffique

Avatar du membre
Camille Caz
Grand Gourou
Grand Gourou
Âge : 84
Messages : 1814
Enregistré le : lun. 25 janv. 2010, 22:45
Humeur : paléolithique mais presque
Localisation : près de La Rochelle

Re: sript pour compter des pertes civiles

Message par Camille Caz »

Il doit y avoir un essaim de "david", c'est pas possible.

Que la ruche demande à Moreback, le seigneur et prince des transferts de fichiers.
Moi,je suis un routard galactique qui ne comprend rien à ces choses terrestres.
On n'a pas toujours ce qu'on mérite mais on ne mérite pas forcément ce qu'on a.

Avatar du membre
=[TTK]= Clem
Retraité
Retraité
Messages : 431
Enregistré le : ven. 12 févr. 2010, 15:47

Re: sript pour compter des pertes civiles

Message par =[TTK]= Clem »

tu conviens d'un rdv avec Camille.sqs ,tu mets ta mission en format dans ton dossier MP missions de ton répertoire arma 2 ,tu lance un serveur tu choisis ta mission ,Camille se connecte ,télécharge la mission puis va don son dossier caché arma 2 ,décompresse la mission ,la transfère dans son dossier édition et te dis ce qui vas pas.
Image

[OTEA] davidbzh
Chouchou
Chouchou
Messages : 17
Enregistré le : jeu. 20 mai 2010, 09:04

Re: sript pour compter des pertes civiles

Message par [OTEA] davidbzh »

J'ai repris la mission de Bobe. Ton script fonctionne à merveille. Il nous reste quelques trucs à vérifier

Je te remercie,

a+
Image

Répondre