Script pour les mines

Pour les Masochistes Éditeurs de missions
Répondre
Avatar du membre
=[TTK]= Yourry
Grand Scriptou
Grand Scriptou
Âge : 36
Messages : 1634
Enregistré le : mer. 17 mars 2010, 16:39
Localisation : Dans le reblochon !

Script pour les mines

Message par =[TTK]= Yourry »

Voila le but est de créer un script pour de mine pour que les voitures les déclenchent en passant dessus:
J'ai trouver un qui marche mais le hic est qu'il ne fonctionne que pour les unitées west ....

Code : Tout sélectionner

if (!isServer) exitWith {};
 
_objet = _this select 0;
_pos = getPos _objet;

deleteVehicle _objet;
_mine = "MineE" createVehicle _pos;

 
 
_declencheur = createTrigger["EmptyDetector",_pos];
_declencheur setTriggerArea[3,3,0,false];
_declencheur setTriggerActivation["ANY","PRESENT",false];

WaitUntil {({side _x == west} count list _declencheur) > 0};
 
 
_boom = "BO_GBU12_LGB" createVehicle _pos;
deleteVehicle _mine;
 
if (true) exitWith {};
Je sais que c'est
WaitUntil {({side _x == west} count list _declencheur) > 0};
qui déclenche (et qui fait que c'est west qui ramasse) mais comment réecrire pour que cela marche avec les opfor et indépendant
j'ai essayé de mettre
WaitUntil {({side _x == west} count list _declencheur) > 0} or WaitUntil {({side _x == est} count list _declencheur) > 0} etc..

mais sa marche pas du tout :mrgreen: :mrgreen:
"Les Boches faisaient "Kamarad". Il aurait fallu commencer par ça des deux côtés, pour éviter les massacres organisés par ceux d'en haut, mais le fusil qu'ils nous avaient collé entre les mains, forcément, il a bien fallu qu'il serve et tout le reste à suivit." dixit Tardi et Verney
Image
L'autre jour, en tirant le rouleau de papier cul, toute la cloison est venue avec. dixit Camille Caz

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

Re: Script pour les mines

Message par =[TTK]= Freshmeat »

Tu retires la ligne, ça devrait être suffisant.

Ensuite, il ne faut pas utiliser exitWith pour sortir sauvagement du script.
Il vaut mieux faire :

Code : Tout sélectionner

if (isserver) then {
// blablabla
};
De même, la dernière ligne ne sert à rien : le script s'arrête de lui-même après exécution de sa dernière instruction.
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
=[TTK]= Memphis007
Grand TranKilou
Grand TranKilou
Âge : 43
Messages : 3351
Enregistré le : mer. 13 janv. 2010, 15:29
Humeur : Binaire
Localisation : 127.0.0.1
Contact :

Re: Script pour les mines

Message par =[TTK]= Memphis007 »

Tu aurais pu essayer avec "east" au lieu de "est"
Si ya pas de shell, ya pas de plaisir...
Image

Fingers in the noise. Maxime verdâtre.

Avatar du membre
=[TTK]= Yourry
Grand Scriptou
Grand Scriptou
Âge : 36
Messages : 1634
Enregistré le : mer. 17 mars 2010, 16:39
Localisation : Dans le reblochon !

Re: Script pour les mines

Message par =[TTK]= Yourry »

Merci Freash mais si j'enlève
WaitUntil {({side _x == west} count list _declencheur) > 0};
elle explose toute seule

Heu après pour tes indics, le coup du
if (isserver) then {
// blablabla
};
Je ne comprend pas.

EDIT: pour memphis, cela ne marche pas du tout quand je met "est" :roll: à la place :mrgreen:
j'y comprend vraiment rien :Evil:
"Les Boches faisaient "Kamarad". Il aurait fallu commencer par ça des deux côtés, pour éviter les massacres organisés par ceux d'en haut, mais le fusil qu'ils nous avaient collé entre les mains, forcément, il a bien fallu qu'il serve et tout le reste à suivit." dixit Tardi et Verney
Image
L'autre jour, en tirant le rouleau de papier cul, toute la cloison est venue avec. dixit Camille Caz

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

Re: Script pour les mines

Message par Camille Caz »

Non. En anglais l'est se dit east, il faut "east".
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]= Yourry
Grand Scriptou
Grand Scriptou
Âge : 36
Messages : 1634
Enregistré le : mer. 17 mars 2010, 16:39
Localisation : Dans le reblochon !

Re: Script pour les mines

Message par =[TTK]= Yourry »

Arf oui je suis bête, sa marche mais cela ne déplace que le problème. Après vous me dirais que je peux faire 3 mines spéciales pour chaque camps avec 3 scripts en remplacent juste "west", "east" et "guerrila" ... mais c'est top quand même
Je vais essayer de trouver une autre solution sinon au pire je ferais ça.
"Les Boches faisaient "Kamarad". Il aurait fallu commencer par ça des deux côtés, pour éviter les massacres organisés par ceux d'en haut, mais le fusil qu'ils nous avaient collé entre les mains, forcément, il a bien fallu qu'il serve et tout le reste à suivit." dixit Tardi et Verney
Image
L'autre jour, en tirant le rouleau de papier cul, toute la cloison est venue avec. dixit Camille Caz

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

Re: Script pour les mines

Message par Camille Caz »

les 4 factions sont west, east, resistance, civilian.
voir
http://community.bistudio.com/wiki/west
__________________________
As-tu vu ceci
http://www.clan-ado.fr/wiki/doku.php?id=editions:tuto31
__________________________
En fait, c'est tout ça qu'il te faut apprendre par cœur !
http://www.clan-ado.fr/wiki/doku.php?id ... s:editions
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: Script pour les mines

Message par =[TTK]= Clem »

tas déjà essayer les pièges a cons ? :

tu place une mine postiche que tu vas apeler mine1(a part pour les véhicules blindes)

Image

puis n'importe quel objet appeler IED1 que tu vas cacher en l'enterant avec la commande This setpos [getpos this select 0, getpos this select 1, -0.5] ;



Image

puis un declencheur de 5 par 5 ,activation n'importe qui ,une fois, type interrupteur et tu lui met çà dedans le champ sur act :

Code : Tout sélectionner

_IED1 = "ARTY_R_227mm_HE" createVehicle (getPos IED1); _IED1_2 = "ARTY_Sh_122_WP" createVehicle (getPos IED1); _IED1_3 = "BO_GBU12_LGB" createVehicle (getPos IED1); hint "boum tes mort" ; deleteVehicle IED1; deleteVehicle mine1;
(virer le hint boum tes mort c'est juste pour voir si le déclencheur s'active )

et tu vas l'apeler boum 1

ce qui donne une unite passe dans le declencheur boum 1 et active l'explosion sur ied1
pour diferente bombe tu met un declenheur aec le code ci dessus pour chaque bombe et tu change le nom de l'objet enterrer par IED2 et ainsi de suite et dans le déclencheur tu remplace IED1 par IED2 , _IED1_2 par _IED2_2 etc

Image

le placement des trois objets est important pour maximiser les dégâts tu place la mine,puis le déclencheur juste sur la mine et juste derrière a la périphérie du rayon du déclencheur tu place IED1.

missions demo : tu ouvre l'editeur et tu place un type tu sauvegarde sous le nom de momo ,tu quites arma tu vas dans ton dossier missions tu cherche le dossier momo , tu edites le mission.sqm avec notepad ou autres,tu efface tout et tu remplace par ceci et tu sauvegarde et puis tu charge la mission dans l'editeur

Code : Tout sélectionner

version=11;
class Mission
{
	addOns[]=
	{
		"cacharacters2",
		"CAWheeled",
		"utes",
		"camisc3",
		"caweapons",
		"CATracked2_T90"
	};
	addOnsAuto[]=
	{
		"cacharacters2",
		"CATracked2_T90",
		"CAWheeled",
		"camisc3",
		"caweapons",
		"utes"
	};
	randomSeed=13433890;
	class Intel
	{
		startWeather=0.40000001;
		forecastWeather=0.25;
		year=2008;
		month=10;
		day=11;
		hour=14;
		minute=20;
	};
	class Groups
	{
		items=2;
		class Item0
		{
			side="WEST";
			class Vehicles
			{
				items=1;
				class Item0
				{
					position[]={3919.3254,19,3606.8738};
					azimut=89.510101;
					id=0;
					side="WEST";
					vehicle="USMC_Soldier_AT";
					player="PLAYER COMMANDER";
					leader=1;
					skill=0.60000002;
					ammo=0;
				};
			};
		};
		class Item1
		{
			side="EAST";
			class Vehicles
			{
				items=1;
				class Item0
				{
					position[]={3846.9771,19,3591.0046};
					special="NONE";
					id=3;
					side="EAST";
					vehicle="RU_Soldier";
					player="PLAY CDG";
					leader=1;
					skill=0.2;
					ammo=0;
				};
			};
		};
	};
	class Vehicles
	{
		items=4;
		class Item0
		{
			position[]={3856.0371,19,3590.6614};
			azimut=87.377899;
			special="NONE";
			id=1;
			side="EMPTY";
			vehicle="T90";
			skill=0.2;
		};
		class Item1
		{
			position[]={3923.6584,19,3602.5183};
			azimut=93.190697;
			special="NONE";
			id=2;
			side="EMPTY";
			vehicle="HMMWV";
			skill=0.2;
		};
		class Item2
		{
			position[]={3952.0488,19,3604.7654};
			special="NONE";
			id=4;
			side="EMPTY";
			vehicle="Land_Pneu";
			skill=0.2;
			text="IED1";
			markers[]=
			{
				"mkrIED2_2",
				"mkrIED2_0",
				"mkrIED2_1"
			};
			init="This setpos [getpos this select 0, getpos this select 1, -0.5]";
		};
		class Item3
		{
			position[]={3946.7727,19,3605.0493};
			special="NONE";
			id=5;
			side="EMPTY";
			vehicle="MineMine";
			skill=0.2;
		};
	};
	class Sensors
	{
		items=1;
		class Item0
		{
			position[]={3946.7234,19,3605.1206};
			a=5;
			b=5;
			activationBy="ANY";
			interruptable=1;
			type="SWITCH";
			age="UNKNOWN";
			name="tgrIED2";
			expActiv="_IED1 = ""ARTY_R_227mm_HE"" createVehicle (getPos IED1); _IED1_2 = ""ARTY_Sh_122_WP"" createVehicle (getPos IED1); _IED1_3 = ""BO_GBU12_LGB"" createVehicle (getPos IED1); hint ""boum tes mort"" ;";
			class Effects
			{
			};
		};
	};
};
class Intro
{
	addOns[]=
	{
		"utes"
	};
	addOnsAuto[]=
	{
		"utes"
	};
	randomSeed=5913530;
	class Intel
	{
		startWeather=0.40000001;
		forecastWeather=0.25;
		year=2008;
		month=10;
		day=11;
		hour=14;
		minute=20;
	};
};
class OutroWin
{
	addOns[]=
	{
		"utes"
	};
	addOnsAuto[]=
	{
		"utes"
	};
	randomSeed=15841324;
	class Intel
	{
		startWeather=0.40000001;
		forecastWeather=0.25;
		year=2008;
		month=10;
		day=11;
		hour=14;
		minute=20;
	};
};
class OutroLoose
{
	addOns[]=
	{
		"utes"
	};
	addOnsAuto[]=
	{
		"utes"
	};
	randomSeed=5437844;
	class Intel
	{
		startWeather=0.40000001;
		forecastWeather=0.25;
		year=2008;
		month=10;
		day=11;
		hour=14;
		minute=20;
	};
};
Image

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

Re: Script pour les mines

Message par =[TTK]= Freshmeat »

J'avais cru comprendre que tu voulais que ca saute à tous les coups :p
(Et non je ne suis pas de mauvaise foi)

Code : Tout sélectionner

if (isServer) then {

_objet = _this select 0;
_pos = getPos _objet;

deleteVehicle _objet;
_mine = "MineE" createVehicle _pos;

_declencheur = createTrigger["EmptyDetector",_pos];
_declencheur setTriggerArea[3,3,0,false];
_declencheur setTriggerActivation["ANY","PRESENT",false];

WaitUntil {(count list _declencheur) > 0};

_boom = "BO_GBU12_LGB" createVehicle _pos;
deleteVehicle _mine;

};
count sans condition renvoie le nombre d'éléments du tableau, tout simplement.
ou au pire tu aurais pu utiliser une condition qui revoie tout le temps vrai :

Code : Tout sélectionner

WaitUntil {({true} count list _declencheur) > 0};
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
=[TTK]= Yourry
Grand Scriptou
Grand Scriptou
Âge : 36
Messages : 1634
Enregistré le : mer. 17 mars 2010, 16:39
Localisation : Dans le reblochon !

Re: Script pour les mines

Message par =[TTK]= Yourry »

Merci à vous, je vais essayer tout ça.
ps: j'aime bien ta technique Clem qui est en plus super simple !!! Elle marche Nickel. Sinon la technique de Fresh marche aussi :D
Encore merci à vous deux !!!
"Les Boches faisaient "Kamarad". Il aurait fallu commencer par ça des deux côtés, pour éviter les massacres organisés par ceux d'en haut, mais le fusil qu'ils nous avaient collé entre les mains, forcément, il a bien fallu qu'il serve et tout le reste à suivit." dixit Tardi et Verney
Image
L'autre jour, en tirant le rouleau de papier cul, toute la cloison est venue avec. dixit Camille Caz

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

Re: Script pour les mines

Message par =[TTK]= Clem »

sauf que j'avais oublier de faire disparaitre les élément du piège

faut juste renommer ta mine mine 1 et placer ceci dedans le declencheur a la fin

Code : Tout sélectionner

 deleteVehicle IED1; deleteVehicle mine1;
Image

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

Re: Script pour les mines

Message par =[TTK]= Freshmeat »

@Clem : pourquoi tu utilises un objet caché et pas directement le déclencheur ? C'est juste pour éventuellement faire sauter une mine depuis un autre endroit ?
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
=[TTK]= Clem
Retraité
Retraité
Messages : 431
Enregistré le : ven. 12 févr. 2010, 15:47

Re: Script pour les mines

Message par =[TTK]= Clem »

quand j'utilise juste le declencheur ,en voiture a pleine vitesse l'explosion se produit a quelques mètres dériere le véhicule et ne l'endommage que partiellement
tandis que avec un objet cacher placer a l'extérieur du déclencheur ça le détruit ou l'endommage gravement et éventuellement ce truc peut être réadapter a beaucoup de situation impliquant un explosif visible ou non.


PS : Fresh tu peux jeter un coup d'œil sur le script que j'ai poster dans ca sent bon la trahison,édition de missions et me dire comment le faire fonctionner s.v.p
Image

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

Re: Script pour les mines

Message par =[TTK]= Freshmeat »

Ok, dans ce cas, tu pourrais envisager :

_IED1 = "ARTY_R_227mm_HE" createVehicle (position (list mon_declencheur select 0));
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

Répondre