Advertisement
Guest User

Untitled

a guest
Jul 13th, 2014
278
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 65.67 KB | None | 0 0
  1. /*
  2. Filterscript Utilitaire
  3. -> Editeur by Ivory
  4.  
  5. ____________________________________________________________________________
  6. Version 1.0
  7.  
  8. Système fonctionelle :
  9.  
  10. -> Suppression / Création d'objets sur un joueur.
  11. -> Edition de l'objet.
  12. -> Sauvegarde des données par fichier .ini.
  13.  
  14. -> Edition d'un preview model
  15. -> Importation et sauvegarde de preview model
  16.  
  17. -> Animation par librairie.
  18. -> Animation par specialaction.
  19. ____________________________________________________________________________
  20. */
  21.  
  22. #define SCRIPT_VERSION 2.0 // Version du script
  23.  
  24.  
  25.  
  26. //Include
  27. #include <a_samp>
  28. #include <Dini>
  29. #include <I_Preview>
  30.  
  31. // Couleur
  32. #define JAUNE 0xF1FE013C
  33. #define ROUGE 0xFF00003C
  34. #define VERT 0xADFF2F3C
  35. #define BLANC 0xFFFFFF3C
  36.  
  37. #define C_Jaune "{F1FE01}"
  38. #define C_Rouge "{FF0000}"
  39. #define C_Vert "{ADFF2F}"
  40. #define C_Blanc "{FFFFFF}"
  41. #define C_Gris "{AFAFAF}"
  42.  
  43. // Fichier .lst
  44. //#define LST_PREVIEW "preview.lst"
  45.  
  46. // Editeur Accessoire
  47.  
  48. // Boite de dialogue
  49. #define ObjetID 9999
  50. #define EmplacementAccCorp 9998
  51. #define EmplacementAccessoire 9997
  52. #define EditerAccessoire 9996
  53. #define AccessoireEnregistrer 9995
  54. #define AccessoireEnregistrer2 9994
  55. #define SupprAccessoire 9993
  56. #define MenuAccessoire 9992
  57. #define QuestionSuppression 9991
  58. #define ImporterAccessoire 9990
  59.  
  60. enum AccJoueur
  61. {
  62. IDAcc,
  63. EmplacementCorp,
  64. Emplacement1,
  65. Emplacement2,
  66. Emplacement3,
  67. Emplacement4,
  68. Emplacement5,
  69. Emplacement6,
  70. Emplacement7,
  71. Emplacement8,
  72. Emplacement9,
  73. }
  74. new Joueur_Acc[MAX_PLAYERS][AccJoueur];
  75.  
  76. // New
  77. new jmodelid[MAX_PLAYERS], jindex[MAX_PLAYERS], jboneid[MAX_PLAYERS];
  78. new Float:jfOffsetX[MAX_PLAYERS], Float:jfOffsetY[MAX_PLAYERS], Float:jfOffsetZ[MAX_PLAYERS];
  79. new Float:jfRotX[MAX_PLAYERS], Float:jfRotY[MAX_PLAYERS], Float:jfRotZ[MAX_PLAYERS];
  80. new Float:jfScaleX[MAX_PLAYERS], Float:jfScaleY[MAX_PLAYERS], Float:jfScaleZ[MAX_PLAYERS];
  81.  
  82. new JoueurCo[MAX_PLAYERS];
  83. new SupprChoisit[MAX_PLAYERS];
  84. new Dialog_Item[MAX_PLAYERS];
  85.  
  86. // Fin Editeur Accessoire
  87.  
  88. // Editeur Preview Model
  89. new Text:P_Txt[16];
  90. new Float:PosPreview[4];
  91. new ModelPreview;
  92. new Edit_Select[MAX_PLAYERS];
  93. new Float:VitesseEdit[4];
  94. new PremierPreview[MAX_PLAYERS];
  95.  
  96. #define Dialog_Preview 9980
  97.  
  98. // Fin Editeur Preview Model
  99.  
  100. // CallBack
  101. public OnFilterScriptInit()
  102. {
  103. print("\n----------------------------------------------");
  104. print("| Editeur by Ivory |");
  105. print("----------------------------------------------\n");
  106. ChargementTextdrawPreview();
  107. VitesseEdit[0] = 1.0;
  108. VitesseEdit[1] = 1.0;
  109. VitesseEdit[2] = 1.0;
  110. VitesseEdit[3] = 1.0;
  111. return 1;
  112. }
  113. public OnFilterScriptExit()
  114. {
  115. return 1;
  116. }
  117. public OnPlayerSpawn(playerid)
  118. {
  119. if(JoueurCo[playerid] == 0)
  120. {JoueurCo[playerid] = 1;
  121. SendClientMessage(playerid, JAUNE, "Edition accessoire : "C_Blanc"/acc(essoire)");
  122. SendClientMessage(playerid, JAUNE, "Edition de preview : "C_Blanc"/preview");
  123. SendClientMessage(playerid, JAUNE, "Edition animation : "C_Blanc"/anim(ation)");
  124. return 1;
  125. }
  126. return 1;
  127. }
  128. public OnPlayerDisconnect(playerid,reason)
  129. {
  130. Joueur_Acc[playerid][IDAcc] = 0;
  131. Joueur_Acc[playerid][EmplacementCorp] = 0;
  132. Joueur_Acc[playerid][Emplacement1] = 0;
  133. Joueur_Acc[playerid][Emplacement2] = 0;
  134. Joueur_Acc[playerid][Emplacement3] = 0;
  135. Joueur_Acc[playerid][Emplacement4] = 0;
  136. Joueur_Acc[playerid][Emplacement5] = 0;
  137. Joueur_Acc[playerid][Emplacement6] = 0;
  138. Joueur_Acc[playerid][Emplacement7] = 0;
  139. Joueur_Acc[playerid][Emplacement8] = 0;
  140. Joueur_Acc[playerid][Emplacement9] = 0;
  141.  
  142. jmodelid[playerid] = 0;
  143. jindex[playerid] = 0;
  144. jboneid[playerid] = 0;
  145. jfOffsetX[playerid] = 0;
  146. jfOffsetY[playerid] = 0;
  147. jfOffsetZ[playerid] = 0;
  148. jfRotX[playerid] = 0;
  149. jfRotY[playerid] = 0;
  150. jfRotZ[playerid] = 0;
  151. jfScaleX[playerid] = 0;
  152. jfScaleY[playerid] = 0;
  153. jfScaleZ[playerid] = 0;
  154. JoueurCo[playerid] = 0;
  155. SupprChoisit[playerid] = 0;
  156. PremierPreview[playerid] = 0;
  157. return 1;
  158. }
  159. public OnPlayerClickTextDraw(playerid, Text:clickedid)
  160. {
  161. if(clickedid == P_Txt[3])
  162. {
  163. PosPreview[0] += VitesseEdit[0];
  164. ModifPreviewModel(playerid, PosPreview[0], PosPreview[1], PosPreview[2], PosPreview[3]);
  165. InitInfosPos(playerid);
  166. return 1;
  167. }
  168. else if(clickedid == P_Txt[4])
  169. {
  170. PosPreview[0] -= VitesseEdit[0];
  171. ModifPreviewModel(playerid, PosPreview[0], PosPreview[1], PosPreview[2], PosPreview[3]);
  172. InitInfosPos(playerid);
  173. return 1;
  174. }
  175. else if(clickedid == P_Txt[5])
  176. {
  177. PosPreview[1] += VitesseEdit[1];
  178. ModifPreviewModel(playerid, PosPreview[0], PosPreview[1], PosPreview[2], PosPreview[3]);
  179. InitInfosPos(playerid);
  180. return 1;
  181. }
  182. else if(clickedid == P_Txt[6])
  183. {
  184. PosPreview[1] -= VitesseEdit[1];
  185. ModifPreviewModel(playerid, PosPreview[0], PosPreview[1], PosPreview[2], PosPreview[3]);
  186. InitInfosPos(playerid);
  187. return 1;
  188. }
  189. else if(clickedid == P_Txt[7])
  190. {
  191. PosPreview[2] += VitesseEdit[2];
  192. ModifPreviewModel(playerid, PosPreview[0], PosPreview[1], PosPreview[2], PosPreview[3]);
  193. InitInfosPos(playerid);
  194. return 1;
  195. }
  196. else if(clickedid == P_Txt[8])
  197. {
  198. PosPreview[2] -= VitesseEdit[2];
  199. ModifPreviewModel(playerid, PosPreview[0], PosPreview[1], PosPreview[2], PosPreview[3]);
  200. InitInfosPos(playerid);
  201. return 1;
  202. }
  203. else if(clickedid == P_Txt[9])
  204. {
  205. PosPreview[3] += VitesseEdit[3];
  206. ModifPreviewModel(playerid, PosPreview[0], PosPreview[1], PosPreview[2], PosPreview[3]);
  207. InitInfosPos(playerid);
  208. return 1;
  209. }
  210. else if(clickedid == P_Txt[10])
  211. {
  212. PosPreview[3] -= VitesseEdit[3];
  213. ModifPreviewModel(playerid, PosPreview[0], PosPreview[1], PosPreview[2], PosPreview[3]);
  214. InitInfosPos(playerid);
  215. return 1;
  216. }
  217. else if(clickedid == P_Txt[12])
  218. {
  219. SupprimerEditeurPreview(playerid);
  220. Edit_CancelSelectTextDraw(playerid);
  221. return 1;
  222. }
  223. else if(clickedid == P_Txt[13])
  224. {
  225. ShowPlayerDialog(playerid, Dialog_Preview, DIALOG_STYLE_INPUT, "Model Preview - Importer","Insérez l'id de l'objet à importer.", "Continuer", "Quitter");
  226. Dialog_Item[playerid] = 2;
  227. return 1;
  228. }
  229. else if(clickedid == P_Txt[14])
  230. {
  231. AddPosPreview(ModelPreview, PosPreview[0], PosPreview[1], PosPreview[2], PosPreview[3]);
  232. SendClientMessage(playerid, 0xFFFFFFFF, "Position preview sauvegardé");
  233. return 1;
  234. }
  235. else if(clickedid == P_Txt[15])
  236. {
  237. ShowPlayerDialog(playerid, Dialog_Preview, DIALOG_STYLE_INPUT, "Model Preview","Insérez l'id de l'objet.", "Ok", "Quitter");
  238. Dialog_Item[playerid] = 1;
  239. return 1;
  240. }
  241. return 1;
  242. }
  243. public OnPlayerUpdate(playerid)
  244. {
  245. if(Edit_Select[playerid] == 1)
  246. {
  247. Edit_SelectTextDraw(playerid, 0xFFFFFFFF);
  248. }
  249. return 1;
  250. }
  251.  
  252. public OnPlayerCommandText(playerid, cmdtext[])
  253. {
  254. new cmd[128], sucmd[128], idx;
  255. cmd = strtok(cmdtext, idx);
  256. if(strcmp(cmd,"/preview",true) == 0)
  257. {
  258. sucmd = strtok(cmdtext, idx);
  259. if(!strlen(sucmd))
  260. {SendClientMessage(playerid, BLANC, ""C_Vert"CMD : "C_Blanc"/preview "C_Vert"[Action]");
  261. SendClientMessage(playerid, BLANC, ""C_Vert"Action : "C_Blanc"editeur, vitesse");
  262. return 1;
  263. }
  264. if(strcmp(sucmd,"editeur",true) == 0)
  265. {
  266. AfficherEditeurPreview(playerid);
  267. PremierPreview[playerid] = 1;
  268. return 1;
  269. }
  270. if(strcmp(sucmd,"vitesse",true) == 0)
  271. {
  272. new item[128], vitesse[128];
  273. item = strtok(cmdtext, idx);
  274. vitesse = strtok(cmdtext, idx);
  275. if(!strlen(item) || !floatstr(vitesse))
  276. {SendClientMessage(playerid, BLANC, ""C_Vert"CMD : "C_Blanc"/preview vitesse"C_Vert"[Item] [Vitesse]");
  277. SendClientMessage(playerid, BLANC, ""C_Vert"Item : "C_Blanc"x (rotx), y (roty), z (rotz), zoom");
  278. return 1;
  279. }
  280. if(strcmp(item,"rotx",true) == 0 || strcmp(item,"x",true) == 0)
  281. {
  282. new phrase[256];
  283. VitesseEdit[0] = floatstr(vitesse);
  284. format(phrase, sizeof(phrase), "Vous avez changé la vitesse de déplacement X (vitesse = %.4f).", floatstr(vitesse));
  285. SendClientMessage(playerid, ROUGE, phrase);
  286. return 1;
  287. }
  288. if(strcmp(item,"roty",true) == 0 || strcmp(item,"y",true) == 0)
  289. {
  290. new phrase[256];
  291. VitesseEdit[1] = floatstr(vitesse);
  292. format(phrase, sizeof(phrase), "Vous avez changé la vitesse de déplacement Y (vitesse = %.4f).", floatstr(vitesse));
  293. SendClientMessage(playerid, ROUGE, phrase);
  294. return 1;
  295. }
  296. if(strcmp(item,"rotz",true) == 0 || strcmp(item,"z",true) == 0)
  297. {
  298. new phrase[256];
  299. VitesseEdit[2] = floatstr(vitesse);
  300. format(phrase, sizeof(phrase), "Vous avez changé la vitesse de déplacement Z (vitesse = %.4f).", floatstr(vitesse));
  301. SendClientMessage(playerid, ROUGE, phrase);
  302. return 1;
  303. }
  304. if(strcmp(item,"zoom",true) == 0)
  305. {
  306. new phrase[256];
  307. VitesseEdit[3] = floatstr(vitesse);
  308. format(phrase, sizeof(phrase), "Vous avez changé la vitesse de déplacement du Zoom (vitesse = %.4f).", floatstr(vitesse));
  309. SendClientMessage(playerid, ROUGE, phrase);
  310. return 1;
  311. }
  312. else
  313. {
  314. SendClientMessage(playerid, BLANC, ""C_Vert"CMD : "C_Blanc"/preview vitesse"C_Vert"[Item] [Vitesse]");
  315. SendClientMessage(playerid, BLANC, ""C_Vert"Item : "C_Blanc"x (posx), y (posy), z (posz), zoom");
  316. return 1;
  317. }
  318. }
  319. return 1;
  320. }
  321. if(strcmp(cmd,"/animation",true) == 0 || strcmp(cmd,"/anim",true) == 0)
  322. {
  323. sucmd = strtok(cmdtext, idx);
  324. if(!strlen(sucmd))
  325. {SendClientMessage(playerid, BLANC, ""C_Vert"CMD : "C_Blanc"/anim(ation) "C_Vert"[Item]");
  326. SendClientMessage(playerid, BLANC, ""C_Vert"Item : "C_Blanc"specialaction, lib");
  327. return 1;
  328. }
  329. if(strcmp(sucmd,"specialaction",true) == 0)
  330. {new action[128];
  331. action = strtok(cmdtext, idx);
  332. if(strval(action) > 0 && strval(action) <= 25)
  333. {SetPlayerSpecialAction(playerid,strval(action)-1);
  334. }
  335. else
  336. {
  337. SendClientMessage(playerid, BLANC, ""C_Vert"CMD : "C_Blanc"/anim(ation) specialaction"C_Vert"[Numero]");
  338. SendClientMessage(playerid, BLANC, "");
  339. SendClientMessage(playerid, BLANC, ""C_Vert"1 : "C_Blanc"SPECIAL_ACTION_NONE | "C_Vert"2 : "C_Blanc"SPECIAL_ACTION_DUCK");
  340. SendClientMessage(playerid, BLANC, ""C_Vert"3 : "C_Blanc"SPECIAL_ACTION_USEJETPACK | "C_Vert"4 : "C_Blanc"SPECIAL_ACTION_DUCK");
  341. SendClientMessage(playerid, BLANC, ""C_Vert"5 : "C_Blanc"SPECIAL_ACTION_EXIT_VEHICLE | "C_Vert"6 : "C_Blanc"SPECIAL_ACTION_DANCE1");
  342. SendClientMessage(playerid, BLANC, ""C_Vert"7 : "C_Blanc"SPECIAL_ACTION_DANCE2 | "C_Vert"8 : "C_Blanc"SPECIAL_ACTION_DANCE3");
  343. SendClientMessage(playerid, BLANC, ""C_Vert"9 : "C_Blanc"SPECIAL_ACTION_DANCE4 | "C_Vert"11 : "C_Blanc"SPECIAL_ACTION_HANDSUP");
  344. SendClientMessage(playerid, BLANC, ""C_Vert"12 : "C_Blanc"SPECIAL_ACTION_USECELLPHONE | "C_Vert"13 : "C_Blanc"SPECIAL_ACTION_SITTING");
  345. SendClientMessage(playerid, BLANC, ""C_Vert"14 : "C_Blanc"SPECIAL_ACTION_STOPUSECELLPHONE | "C_Vert"21 : "C_Blanc"SPECIAL_ACTION_DRINK_BEER");
  346. SendClientMessage(playerid, BLANC, ""C_Vert"22 : "C_Blanc"SPECIAL_ACTION_SMOKE_CIGGY | "C_Vert"23 : "C_Blanc"SPECIAL_ACTION_DRINK_WINE");
  347. SendClientMessage(playerid, BLANC, ""C_Vert"24 : "C_Blanc"SPECIAL_ACTION_DRINK_SPRUNK | "C_Vert"25 : "C_Blanc"SPECIAL_ACTION_CUFFED");
  348. SendClientMessage(playerid, BLANC, ""C_Vert"26 : "C_Blanc"SPECIAL_ACTION_CARRY");
  349. SendClientMessage(playerid, ROUGE, "Insérez un des numéros ci-dessus pour effectuer une action spécial.");
  350. }
  351. return 1;
  352. }
  353. if(strcmp(sucmd,"lib",true) == 0)
  354. {new AnimLib[254], AnimName[254], tmp[128], Freeze, Repeter, Deplacement;
  355. tmp = strtok(cmdtext, idx);
  356. format(AnimLib, sizeof(AnimLib), "%s", tmp);
  357. if(!strlen(AnimLib))
  358. {SendClientMessage(playerid, BLANC, ""C_Vert"CMD : "C_Blanc"/anim(ation) lib "C_Gris"[AnimLib] [AnimName] [Vitesse] [Repeter(0/1)] [Deplacement(0/1)] [Freeze(0/1)]");
  359. return 1;
  360. }
  361. tmp = strtok(cmdtext, idx);
  362. format(AnimName, sizeof(AnimName), "%s", tmp);
  363. if(!strlen(tmp))
  364. {SendClientMessage(playerid, BLANC, ""C_Vert"CMD : "C_Blanc"/anim(ation) lib "C_Gris"[AnimLib] [AnimName] [Vitesse] [Repeter(0/1)] [Deplacement(0/1)] [Freeze(0/1)]");
  365. return 1;
  366. }
  367. tmp = strtok(cmdtext, idx);
  368. Repeter = strval(tmp);
  369. if(!strlen(tmp))
  370. {SendClientMessage(playerid, BLANC, ""C_Vert"CMD : "C_Blanc"/anim(ation) lib "C_Gris"[AnimLib] [AnimName] [Vitesse] [Repeter(0/1)] [Deplacement(0/1)] [Freeze(0/1)]");
  371. return 1;
  372. }
  373. tmp = strtok(cmdtext, idx);
  374. Deplacement = strval(tmp);
  375. if(!strlen(tmp))
  376. {SendClientMessage(playerid, BLANC, ""C_Vert"CMD : "C_Blanc"/anim(ation) lib "C_Gris"[AnimLib] [AnimName] [Vitesse] [Repeter(0/1)] [Deplacement(0/1)] [Freeze(0/1)]");
  377. return 1;
  378. }
  379. tmp = strtok(cmdtext, idx);
  380. Freeze = strval(tmp);
  381. if(!strlen(tmp))
  382. {SendClientMessage(playerid, BLANC, ""C_Vert"CMD : "C_Blanc"/anim(ation) lib "C_Gris"[AnimLib] [AnimName] [Vitesse] [Repeter(0/1)] [Deplacement(0/1)] [Freeze(0/1)]");
  383. return 1;
  384. }
  385. ApplyAnimation(playerid,AnimLib,AnimName,4.0,Repeter,Deplacement,Deplacement,Deplacement,Freeze);
  386. return 1;
  387. }
  388. else
  389. {
  390. SendClientMessage(playerid, BLANC, ""C_Vert"CMD : "C_Blanc"/anim(ation) "C_Vert"[Item]");
  391. SendClientMessage(playerid, BLANC, ""C_Vert"Item : "C_Blanc"specialaction, lib");
  392. return 1;
  393. }
  394. }
  395. if(strcmp(cmd,"/accessoire",true) == 0 || strcmp(cmd,"/acc",true) == 0)
  396. {
  397. sucmd = strtok(cmdtext, idx);
  398. if(!strlen(sucmd))
  399. {SendClientMessage(playerid, BLANC, ""C_Vert"CMD : "C_Blanc"/acc(essoire) "C_Gris"[Item]");
  400. SendClientMessage(playerid, BLANC, ""C_Vert"Item : "C_Blanc"creation, aide");
  401. return 1;
  402. }
  403. if(strcmp(sucmd,"creation",true) == 0)
  404. {ShowPlayerDialog(playerid, MenuAccessoire, DIALOG_STYLE_LIST, "Accessoire", "{ADFF2F}1. {FFFFFF}Creer\n{ADFF2F}2. {FFFFFF}Editer\n{ADFF2F}3. {FFFFFF}Supprimer\n{ADFF2F}4. {FFFFFF}Importer", "Continuer", "Quitter");
  405. return 1;
  406. }
  407. if(strcmp(sucmd,"aide",true) == 0)
  408. {new phrase[1024], finphrase[1024];
  409. format(phrase, sizeof(phrase),"{ADFF2F}Editeur d'accessoire By Ivory. {FF0000}[/cred]{FFFFFF}\n\n");
  410. strcat(finphrase, phrase, sizeof(phrase));
  411. format(phrase, sizeof(phrase),"Grâce au fonction de cette éditeur vous pourez déterminer précisement \nla position de n'importe quelle objets sur votre joueur,\n");
  412. strcat(finphrase, phrase, sizeof(phrase));
  413. format(phrase, sizeof(phrase),"il vous suffit d'utiliser la commande /accessoire pour commencer l'édition.\nUne fois votre travail achevé clické sur la disquette\n");
  414. strcat(finphrase, phrase, sizeof(phrase));
  415. format(phrase, sizeof(phrase),"présente sur l'interface d'édition, vous pouvez effectuer\nune sauvegarde afin de récupérer les données.\n\n\n");
  416. strcat(finphrase, phrase, sizeof(phrase));
  417. format(phrase, sizeof(phrase),"{ADFF2F}En ce qui concerne la sauvegarde : {FFFFFF}\n\n");
  418. strcat(finphrase, phrase, sizeof(phrase));
  419. format(phrase, sizeof(phrase),"Une fois la sauvegarde effectué, allez dans le dossier racine\nde votre gamemode et ensuite dans le dossier 'Scriptfile',\n");
  420. strcat(finphrase, phrase, sizeof(phrase));
  421. format(phrase, sizeof(phrase),"ici sont regroupé toutes les sauvegardes de vos objets en fichier.ini.\nChaque fichier contient les informations des objets (Position, Rotation ...).\n");
  422. strcat(finphrase, phrase, sizeof(phrase));
  423.  
  424. format(phrase, sizeof(phrase),"Vous pourrez aussi y trouver une fonction 'SetPlayerAttachedObject' préfaite avec les informations de l'objet.\n\n");
  425. strcat(finphrase, phrase, sizeof(phrase));
  426. format(phrase, sizeof(phrase),"{FF0000}Version : %.1f\n",SCRIPT_VERSION);
  427. strcat(finphrase, phrase, sizeof(phrase));
  428. format(phrase, sizeof(phrase),"{FF0000}Rendez-vous sur http://forum.sa-mp.com/ pour les mises à jours.");
  429. strcat(finphrase, phrase, sizeof(phrase));
  430. ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Aide", finphrase, "Ok", "");
  431. return 1;
  432. }
  433. else
  434. {
  435. SendClientMessage(playerid, BLANC, ""C_Vert"CMD : "C_Blanc"/acc(essoire) "C_Gris"[Item]");
  436. SendClientMessage(playerid, BLANC, ""C_Vert"Item : "C_Blanc"creation, aide");
  437. return 1;
  438. }
  439. }
  440. if(strcmp(cmdtext,"/cred",true) == 0)
  441. {new phrase[256];
  442. format(phrase, sizeof(phrase),"{ADFF2F}Editeur d'accessoire - FilterScript utilitaire {FF0000}V %.1f\n\n{FFFFFF}Réalisé par Ivory", SCRIPT_VERSION);
  443. ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Credits",phrase, "Ok", "");
  444. return 1;
  445. }
  446. return 0;
  447. }
  448. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  449. {
  450. // Preview
  451. if(dialogid == Dialog_Preview)
  452. {
  453. if(Dialog_Item[playerid] == 1)
  454. {
  455. if(response)
  456. {
  457. new phrase[256];
  458. if(!strval(inputtext))
  459. {ShowPlayerDialog(playerid, Dialog_Preview, DIALOG_STYLE_INPUT, "Model Preview","Insérez l'id de l'objet.", "Ok", "Quitter");
  460. return 1;
  461. }
  462. ModifModelIDPreview(playerid, strval(inputtext));
  463. format(phrase, sizeof(phrase),"Vous avez modifié l'id de l'objet du preview model. (ID : %d)",strval(inputtext));
  464. SendClientMessage(playerid, 0xADFF2FFF,phrase);
  465. Edit_SelectTextDraw(playerid, 0xFFFFFFFF);
  466. return 1;
  467. }
  468. else
  469. {Edit_SelectTextDraw(playerid, 0xFFFFFFFF);
  470. }
  471. return 1;
  472. }
  473. if(Dialog_Item[playerid] == 2)
  474. {
  475. if(response)
  476. {
  477. new charger = ChargementPosPreview(strval(inputtext));
  478. if(charger == 0)
  479. {SendClientMessage(playerid, ROUGE, "Aucun fichier n'existe pour model.");
  480. ShowPlayerDialog(playerid, Dialog_Preview, DIALOG_STYLE_INPUT, "Model Preview - Importer","Insérez l'id de l'objet à importer.", "Continuer", "Quitter");
  481. Dialog_Item[playerid] = 2;
  482. return 1;
  483. }
  484. new Float:Pos[4];
  485. GetPosPreview(strval(inputtext), Pos[0], Pos[1], Pos[2], Pos[3]);
  486. ModifModelIDPreview(playerid, strval(inputtext));
  487. ModifPreviewModel(playerid, Pos[0], Pos[1], Pos[2], Pos[3]);
  488. InitInfosPos(playerid);
  489. SendClientMessage(playerid, ROUGE, "Fichier importé avec succé.");
  490. Edit_SelectTextDraw(playerid, 0xFFFFFFFF);
  491. return 1;
  492. }
  493. return 1;
  494. }
  495. return 1;
  496. }
  497. // Accessoire
  498. if(dialogid == MenuAccessoire)
  499. {
  500. if(response)
  501. {
  502. if(listitem == 0)
  503. {ShowPlayerDialog(playerid, ObjetID, DIALOG_STYLE_INPUT, "Accessoire - Création", "Vous êtes sur le point de creer un objet.\n\nInsérer l'id de l'objet.", "Continuer", "Retour");}
  504. if(listitem == 1)
  505. {Dialogue_Edition(playerid);}
  506. if(listitem == 2)
  507. {Dialogue_Suppression(playerid);}
  508. if(listitem == 3)
  509. {Dialogue_Importation(playerid, 1);}
  510. }
  511. }
  512. if(dialogid == ObjetID)
  513. {
  514. if(response)
  515. {
  516. if(!strval(inputtext))
  517. {SendClientMessage(playerid,ROUGE,"Vous avez laissé le champ vide.");
  518. ShowPlayerDialog(playerid, ObjetID, DIALOG_STYLE_INPUT, "Accessoire - Création", "Vous êtes sur le point de creer un objet.\n\nInsérer l'id de l'objet.", "Continuer", "Retour");
  519. return 1;
  520. }
  521. Joueur_Acc[playerid][IDAcc] = strval(inputtext);
  522. Dialogue_EmplacementCorp(playerid);
  523. }
  524. else
  525. {ShowPlayerDialog(playerid, MenuAccessoire, DIALOG_STYLE_LIST, "Accessoire", "{ADFF2F}1. {FFFFFF}Creer\n{ADFF2F}2. {FFFFFF}Editer\n{ADFF2F}3. {FFFFFF}Supprimer\n{ADFF2F}4. {FFFFFF}Importer", "Continuer", "Quitter");}
  526. }
  527. if(dialogid == EmplacementAccCorp)
  528. {
  529. if(response)
  530. {Joueur_Acc[playerid][EmplacementCorp] = listitem+1;
  531. if(listitem >= 0)
  532. {Dialogue_Fente(playerid);}
  533. }
  534. else
  535. {ShowPlayerDialog(playerid, ObjetID, DIALOG_STYLE_INPUT, "Accessoire - Création", "Insérer l'id de l'objet.", "Continuer", "Retour");}
  536.  
  537. }
  538. if(dialogid == EmplacementAccessoire)
  539. {
  540. if(response)
  541. {
  542. if(listitem == 0)
  543. {if(Joueur_Acc[playerid][Emplacement1] > 0)
  544. {SendClientMessage(playerid,ROUGE,"Il y a déjà quelque chose à cette emplacement.");
  545. Dialogue_Fente(playerid);
  546. return 1;
  547. }
  548. new phrase[500];
  549. Joueur_Acc[playerid][Emplacement1] = 1;
  550. SetPlayerAttachedObject(playerid,1,Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp]);
  551. format(phrase, sizeof(phrase),"Accessoire creer. Id = %d, Emplacement du corp = %d, Emplacement générale = 1.",Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp],Joueur_Acc[playerid][Emplacement1]);
  552. SendClientMessage(playerid,JAUNE,phrase);
  553. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement1]);
  554. }
  555. if(listitem == 1)
  556. {if(Joueur_Acc[playerid][Emplacement2] > 0)
  557. {SendClientMessage(playerid,ROUGE,"Il y a déjà quelque chose à cette emplacement.");
  558. Dialogue_Fente(playerid);
  559. return 1;
  560. }
  561. new phrase[500];
  562. Joueur_Acc[playerid][Emplacement2] = 2;
  563. SetPlayerAttachedObject(playerid,2,Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp]);
  564. format(phrase, sizeof(phrase),"Accessoire creer. Id = %d, Emplacement du corp = %d, Emplacement générale = 2.",Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp],Joueur_Acc[playerid][Emplacement2]);
  565. SendClientMessage(playerid,JAUNE,phrase);
  566. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement2]);
  567. }
  568. if(listitem == 2)
  569. {if(Joueur_Acc[playerid][Emplacement3] > 0)
  570. {SendClientMessage(playerid,ROUGE,"Il y a déjà quelque chose à cette emplacement.");
  571. Dialogue_Fente(playerid);
  572. return 1;
  573. }
  574. new phrase[500];
  575. Joueur_Acc[playerid][Emplacement3] = 3;
  576. SetPlayerAttachedObject(playerid,3,Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp]);
  577. format(phrase, sizeof(phrase),"Accessoire creer. Id = %d, Emplacement du corp = %d, Emplacement générale = 3.",Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp],Joueur_Acc[playerid][Emplacement3]);
  578. SendClientMessage(playerid,JAUNE,phrase);
  579. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement3]);
  580. }
  581. if(listitem == 3)
  582. {if(Joueur_Acc[playerid][Emplacement4] > 0)
  583. {SendClientMessage(playerid,ROUGE,"Il y a déjà quelque chose à cette emplacement.");
  584. Dialogue_Fente(playerid);
  585. return 1;
  586. }
  587. new phrase[500];
  588. Joueur_Acc[playerid][Emplacement4] = 4;
  589. SetPlayerAttachedObject(playerid,4,Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp]);
  590. format(phrase, sizeof(phrase),"Accessoire creer. Id = %d, Emplacement du corp = %d, Emplacement générale = 4.",Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp],Joueur_Acc[playerid][Emplacement4]);
  591. SendClientMessage(playerid,JAUNE,phrase);
  592. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement4]);
  593. }
  594. if(listitem == 4)
  595. {if(Joueur_Acc[playerid][Emplacement5] > 0)
  596. {SendClientMessage(playerid,ROUGE,"Il y a déjà quelque chose à cette emplacement.");
  597. Dialogue_Fente(playerid);
  598. return 1;
  599. }
  600. new phrase[500];
  601. Joueur_Acc[playerid][Emplacement5] = 5;
  602. SetPlayerAttachedObject(playerid,5,Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp]);
  603. format(phrase, sizeof(phrase),"Accessoire creer. Id = %d, Emplacement du corp = %d, Emplacement générale = 5.",Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp],Joueur_Acc[playerid][Emplacement5]);
  604. SendClientMessage(playerid,JAUNE,phrase);
  605. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement5]);
  606. }
  607. if(listitem == 5)
  608. {if(Joueur_Acc[playerid][Emplacement6] > 0)
  609. {SendClientMessage(playerid,ROUGE,"Il y a déjà quelque chose à cette emplacement.");
  610. Dialogue_Fente(playerid);
  611. return 1;
  612. }
  613. new phrase[500];
  614. Joueur_Acc[playerid][Emplacement6] = 6;
  615. SetPlayerAttachedObject(playerid,6,Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp]);
  616. format(phrase, sizeof(phrase),"Accessoire creer. Id = %d, Emplacement du corp = %d, Emplacement générale = 6.",Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp],Joueur_Acc[playerid][Emplacement6]);
  617. SendClientMessage(playerid,JAUNE,phrase);
  618. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement6]);
  619. }
  620. if(listitem == 6)
  621. {if(Joueur_Acc[playerid][Emplacement7] > 0)
  622. {SendClientMessage(playerid,ROUGE,"Il y a déjà quelque chose à cette emplacement.");
  623. Dialogue_Fente(playerid);
  624. return 1;
  625. }
  626. new phrase[500];
  627. Joueur_Acc[playerid][Emplacement7] = 7;
  628. SetPlayerAttachedObject(playerid,7,Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp]);
  629. format(phrase, sizeof(phrase),"Accessoire creer. Id = %d, Emplacement du corp = %d, Emplacement générale = 7.",Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp],Joueur_Acc[playerid][Emplacement7]);
  630. SendClientMessage(playerid,JAUNE,phrase);
  631. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement7]);
  632. }
  633. if(listitem == 7)
  634. {if(Joueur_Acc[playerid][Emplacement8] > 0)
  635. {SendClientMessage(playerid,ROUGE,"Il y a déjà quelque chose à cette emplacement.");
  636. Dialogue_Fente(playerid);
  637. return 1;
  638. }
  639. new phrase[500];
  640. Joueur_Acc[playerid][Emplacement8] = 8;
  641. SetPlayerAttachedObject(playerid,8,Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp]);
  642. format(phrase, sizeof(phrase),"Accessoire creer. Id = %d, Emplacement du corp = %d, Emplacement générale = 8.",Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp]);
  643. SendClientMessage(playerid,JAUNE,phrase);
  644. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement8]);
  645. }
  646. if(listitem == 8)
  647. {if(Joueur_Acc[playerid][Emplacement9] > 0)
  648. {SendClientMessage(playerid,ROUGE,"Il y a déjà quelque chose à cette emplacement.");
  649. Dialogue_Fente(playerid);
  650. return 1;
  651. }
  652. new phrase[500];
  653. Joueur_Acc[playerid][Emplacement9] = 9;
  654. SetPlayerAttachedObject(playerid,9,Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp]);
  655. format(phrase, sizeof(phrase),"Accessoire creer. Id = %d, Emplacement du corp = %d, Emplacement générale = 9.",Joueur_Acc[playerid][IDAcc],Joueur_Acc[playerid][EmplacementCorp]);
  656. SendClientMessage(playerid,JAUNE,phrase);
  657. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement9]);
  658. }
  659. }
  660. else
  661. {Dialogue_EmplacementCorp(playerid);}
  662. }
  663. if(dialogid == EditerAccessoire)
  664. {
  665. if(response)
  666. {
  667. if(listitem == 0)
  668. {if(Joueur_Acc[playerid][Emplacement1] == 0)
  669. {SendClientMessage(playerid,ROUGE,"Il n'y rien à cette emplacement.");
  670. Dialogue_Edition(playerid);
  671. return 1;
  672. }
  673. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement1]);
  674. }
  675. if(listitem == 1)
  676. {if(Joueur_Acc[playerid][Emplacement2] == 0)
  677. {SendClientMessage(playerid,ROUGE,"Il n'y rien à cette emplacement.");
  678. Dialogue_Edition(playerid);
  679. return 1;
  680. }
  681. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement2]);
  682. }
  683. if(listitem == 2)
  684. {if(Joueur_Acc[playerid][Emplacement3] == 0)
  685. {SendClientMessage(playerid,ROUGE,"Il n'y rien à cette emplacement.");
  686. Dialogue_Edition(playerid);
  687. return 1;
  688. }
  689. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement3]);
  690. }
  691. if(listitem == 3)
  692. {if(Joueur_Acc[playerid][Emplacement4] == 0)
  693. {SendClientMessage(playerid,ROUGE,"Il n'y rien à cette emplacement.");
  694. Dialogue_Edition(playerid);
  695. return 1;
  696. }
  697. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement4]);
  698. }
  699. if(listitem == 4)
  700. {if(Joueur_Acc[playerid][Emplacement5] == 0)
  701. {SendClientMessage(playerid,ROUGE,"Il n'y rien à cette emplacement.");
  702. Dialogue_Edition(playerid);
  703. return 1;
  704. }
  705. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement5]);
  706. }
  707. if(listitem == 5)
  708. {if(Joueur_Acc[playerid][Emplacement6] == 0)
  709. {SendClientMessage(playerid,ROUGE,"Il n'y rien à cette emplacement.");
  710. Dialogue_Edition(playerid);
  711. return 1;
  712. }
  713. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement6]);
  714. }
  715. if(listitem == 6)
  716. {if(Joueur_Acc[playerid][Emplacement7] == 0)
  717. {SendClientMessage(playerid,ROUGE,"Il n'y rien à cette emplacement.");
  718. Dialogue_Edition(playerid);
  719. return 1;
  720. }
  721. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement7]);
  722. }
  723. if(listitem == 7)
  724. {if(Joueur_Acc[playerid][Emplacement8] == 0)
  725. {SendClientMessage(playerid,ROUGE,"Il n'y rien à cette emplacement.");
  726. Dialogue_Edition(playerid);
  727. return 1;
  728. }
  729. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement8]);
  730. }
  731. if(listitem == 8)
  732. {if(Joueur_Acc[playerid][Emplacement9] == 0)
  733. {SendClientMessage(playerid,ROUGE,"Il n'y rien à cette emplacement.");
  734. Dialogue_Edition(playerid);
  735. return 1;
  736. }
  737. EditAttachedObject(playerid, Joueur_Acc[playerid][Emplacement9]);
  738. }
  739. }
  740. else
  741. {ShowPlayerDialog(playerid, MenuAccessoire, DIALOG_STYLE_LIST, "Accessoire", "{ADFF2F}1. {FFFFFF}Creer\n{ADFF2F}2. {FFFFFF}Editer\n{ADFF2F}3. {FFFFFF}Supprimer\n{ADFF2F}4. {FFFFFF}Importer", "Continuer", "Quitter");}
  742. }
  743. if(dialogid == AccessoireEnregistrer)
  744. {
  745. if(response)
  746. {ShowPlayerDialog(playerid, AccessoireEnregistrer2, DIALOG_STYLE_INPUT, "Accessoire - Sauvegarde", "Donner un nom pour votre fichier de sauvegarde.", "Ok", "Quitter");}
  747. else
  748. {
  749. new phrase[500],finphrase[500];
  750. format(phrase,sizeof phrase,"Accessoire edité\n\n{ADFF2F}Fente : {FFFFFF}%d\n",jindex[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  751. format(phrase,sizeof phrase,"{ADFF2F}ID Objet : {FFFFFF}%d\n",jmodelid[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  752. format(phrase,sizeof phrase,"{ADFF2F}Emplacement du Corp : {FFFFFF}%d\n",jboneid[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  753. format(phrase,sizeof phrase,"{ADFF2F}Position X : {FFFFFF}%f\n",jfOffsetX[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  754. format(phrase,sizeof phrase,"{ADFF2F}Position Y : {FFFFFF}%f\n",jfOffsetY[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  755. format(phrase,sizeof phrase,"{ADFF2F}Position Z : {FFFFFF}%f\n",jfOffsetZ[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  756. format(phrase,sizeof phrase,"{ADFF2F}Rotation X : {FFFFFF}%f\n",jfRotX[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  757. format(phrase,sizeof phrase,"{ADFF2F}Rotation Y : {FFFFFF}%f\n",jfRotY[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  758. format(phrase,sizeof phrase,"{ADFF2F}Rotation Z : {FFFFFF}%f\n",jfRotZ[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  759. format(phrase,sizeof phrase,"{ADFF2F}Taille X : {FFFFFF}%f\n",jfScaleX[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  760. format(phrase,sizeof phrase,"{ADFF2F}Taille Y : {FFFFFF}%f\n",jfScaleY[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  761. format(phrase,sizeof phrase,"{ADFF2F}Taille Z : {FFFFFF}%f\n",jfScaleZ[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  762. ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Information", finphrase, "Ok", "");
  763.  
  764. RemovePlayerAttachedObject(playerid, jindex[playerid]);
  765. SetPlayerAttachedObject(playerid,jindex[playerid],jmodelid[playerid],jboneid[playerid],jfOffsetX[playerid],jfOffsetY[playerid],jfOffsetZ[playerid],jfRotX[playerid],jfRotY[playerid],jfRotZ[playerid],jfScaleX[playerid],jfScaleY[playerid],jfScaleZ[playerid]);
  766. }
  767. }
  768. if(dialogid == AccessoireEnregistrer2)
  769. {
  770. if(response)
  771. {
  772. new NomFichier[255], phrase[500], fonction[256], finphrase[500];
  773. strmid(NomFichier,inputtext, 0, strlen(inputtext),128);
  774. format(phrase,sizeof phrase,"%s.ini",NomFichier);
  775. dini_Create(phrase);
  776. dini_IntSet(phrase, "Fente",jindex[playerid]);
  777. dini_IntSet(phrase, "Model",jmodelid[playerid]);
  778. dini_IntSet(phrase, "EmplacementCorp",jboneid[playerid]);
  779. dini_FloatSet(phrase, "Decalagex",jfOffsetX[playerid]);
  780. dini_FloatSet(phrase, "Decalagey",jfOffsetY[playerid]);
  781. dini_FloatSet(phrase, "Decalagez",jfOffsetZ[playerid]);
  782. dini_FloatSet(phrase, "Rotationx",jfRotX[playerid]);
  783. dini_FloatSet(phrase, "Rotationy",jfRotY[playerid]);
  784. dini_FloatSet(phrase, "Rotationz",jfRotZ[playerid]);
  785. dini_FloatSet(phrase, "Taillex",jfScaleX[playerid]);
  786. dini_FloatSet(phrase, "Tailley",jfScaleY[playerid]);
  787. dini_FloatSet(phrase, "Taillez",jfScaleZ[playerid]);
  788. format(fonction,sizeof fonction,"SetPlayerAttachedObject(playerid,%d,%d,%d,%f,%f,%f,%f,%f,%f,%f,%f,%f);",jindex[playerid],jmodelid[playerid],jboneid[playerid],jfOffsetX[playerid],jfOffsetY[playerid],jfOffsetZ[playerid],jfRotX[playerid],jfRotY[playerid],jfRotZ[playerid],jfScaleX[playerid],jfScaleY[playerid],jfScaleZ[playerid]);
  789. dini_Set(phrase, "Fonction",fonction);
  790.  
  791.  
  792. format(phrase,sizeof phrase,"Accessoire edité\n\n{ADFF2F}Fente : {FFFFFF}%d\n",jindex[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  793. format(phrase,sizeof phrase,"{ADFF2F}ID Objet : {FFFFFF}%d\n",jmodelid[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  794. format(phrase,sizeof phrase,"{ADFF2F}Emplacement du Corp : {FFFFFF}%d\n",jboneid[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  795. format(phrase,sizeof phrase,"{ADFF2F}Position X : {FFFFFF}%f\n",jfOffsetX[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  796. format(phrase,sizeof phrase,"{ADFF2F}Position Y : {FFFFFF}%f\n",jfOffsetY[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  797. format(phrase,sizeof phrase,"{ADFF2F}Position Z : {FFFFFF}%f\n",jfOffsetZ[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  798. format(phrase,sizeof phrase,"{ADFF2F}Rotation X : {FFFFFF}%f\n",jfRotX[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  799. format(phrase,sizeof phrase,"{ADFF2F}Rotation Y : {FFFFFF}%f\n",jfRotY[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  800. format(phrase,sizeof phrase,"{ADFF2F}Rotation Z : {FFFFFF}%f\n",jfRotZ[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  801. format(phrase,sizeof phrase,"{ADFF2F}Taille X : {FFFFFF}%f\n",jfScaleX[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  802. format(phrase,sizeof phrase,"{ADFF2F}Taille Y : {FFFFFF}%f\n",jfScaleY[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  803. format(phrase,sizeof phrase,"{ADFF2F}Taille Z : {FFFFFF}%f\n",jfScaleZ[playerid]);strcat(finphrase, phrase, sizeof(phrase));
  804. ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Information", finphrase, "Ok", "");
  805.  
  806. RemovePlayerAttachedObject(playerid, jindex[playerid]);
  807. SetPlayerAttachedObject(playerid,jindex[playerid],jmodelid[playerid],jboneid[playerid],jfOffsetX[playerid],jfOffsetY[playerid],jfOffsetZ[playerid],jfRotX[playerid],jfRotY[playerid],jfRotZ[playerid],jfScaleX[playerid],jfScaleY[playerid],jfScaleZ[playerid]);
  808. format(phrase,sizeof phrase,"Fichier sauvegardé au nom de %s",NomFichier);
  809. SendClientMessage(playerid,JAUNE,phrase);
  810. }
  811. else
  812. {RemovePlayerAttachedObject(playerid, jindex[playerid]);
  813. SetPlayerAttachedObject(playerid,jindex[playerid],jmodelid[playerid],jboneid[playerid],jfOffsetX[playerid],jfOffsetY[playerid],jfOffsetZ[playerid],jfRotX[playerid],jfRotY[playerid],jfRotZ[playerid],jfScaleX[playerid],jfScaleY[playerid],jfScaleZ[playerid]);}
  814. }
  815. if(dialogid == QuestionSuppression)
  816. {
  817. if(response)
  818. {
  819. if(SupprChoisit[playerid] == 1)
  820. {RemovePlayerAttachedObject(playerid, Joueur_Acc[playerid][Emplacement1]);
  821. Joueur_Acc[playerid][Emplacement1] = 0;
  822. SendClientMessage(playerid,JAUNE,"L'accessoire de l'emplacement 1 a été supprimer.");
  823. Dialogue_Suppression(playerid);
  824. }
  825. if(SupprChoisit[playerid] == 2)
  826. {RemovePlayerAttachedObject(playerid, Joueur_Acc[playerid][Emplacement2]);
  827. Joueur_Acc[playerid][Emplacement2] = 0;
  828. SendClientMessage(playerid,JAUNE,"L'accessoire de l'emplacement 2 a été supprimer.");
  829. Dialogue_Suppression(playerid);
  830. }
  831. if(SupprChoisit[playerid] == 3)
  832. {RemovePlayerAttachedObject(playerid, Joueur_Acc[playerid][Emplacement3]);
  833. Joueur_Acc[playerid][Emplacement3] = 0;
  834. SendClientMessage(playerid,JAUNE,"L'accessoire de l'emplacement 3 a été supprimer.");
  835. Dialogue_Suppression(playerid);
  836. }
  837. if(SupprChoisit[playerid] == 4)
  838. {RemovePlayerAttachedObject(playerid, Joueur_Acc[playerid][Emplacement1]);
  839. Joueur_Acc[playerid][Emplacement4] = 0;
  840. SendClientMessage(playerid,JAUNE,"L'accessoire de l'emplacement 4 a été supprimer.");
  841. Dialogue_Suppression(playerid);
  842. }
  843. if(SupprChoisit[playerid] == 5)
  844. {RemovePlayerAttachedObject(playerid, Joueur_Acc[playerid][Emplacement5]);
  845. Joueur_Acc[playerid][Emplacement5] = 0;
  846. SendClientMessage(playerid,JAUNE,"L'accessoire de l'emplacement 5 a été supprimer.");
  847. Dialogue_Suppression(playerid);
  848. }
  849. if(SupprChoisit[playerid] == 6)
  850. {RemovePlayerAttachedObject(playerid, Joueur_Acc[playerid][Emplacement6]);
  851. Joueur_Acc[playerid][Emplacement6] = 0;
  852. SendClientMessage(playerid,JAUNE,"L'accessoire de l'emplacement 6 a été supprimer.");
  853. Dialogue_Suppression(playerid);
  854. }
  855. if(SupprChoisit[playerid] == 7)
  856. {RemovePlayerAttachedObject(playerid, Joueur_Acc[playerid][Emplacement7]);
  857. Joueur_Acc[playerid][Emplacement7] = 0;
  858. SendClientMessage(playerid,JAUNE,"L'accessoire de l'emplacement 7 a été supprimer.");
  859. Dialogue_Suppression(playerid);
  860. }
  861. if(SupprChoisit[playerid] == 8)
  862. {RemovePlayerAttachedObject(playerid, Joueur_Acc[playerid][Emplacement8]);
  863. Joueur_Acc[playerid][Emplacement8] = 0;
  864. SendClientMessage(playerid,JAUNE,"L'accessoire de l'emplacement 8 a été supprimer.");
  865. Dialogue_Suppression(playerid);
  866. }
  867. if(SupprChoisit[playerid] == 9)
  868. {RemovePlayerAttachedObject(playerid, Joueur_Acc[playerid][Emplacement9]);
  869. Joueur_Acc[playerid][Emplacement9] = 0;
  870. SendClientMessage(playerid,JAUNE,"L'accessoire de l'emplacement 9 a été supprimer.");
  871. Dialogue_Suppression(playerid);
  872. }
  873. }
  874. else
  875. {Dialogue_Suppression(playerid);}
  876. }
  877. if(dialogid == SupprAccessoire)
  878. {
  879. if(response)
  880. {
  881. if(listitem == 0)
  882. {if(Joueur_Acc[playerid][Emplacement1] == 0)
  883. {SendClientMessage(playerid,ROUGE,"Il n'y a rien à cette emplacement.");
  884. Dialogue_Suppression(playerid);
  885. return 1;
  886. }
  887. SupprChoisit[playerid] = 1;
  888. ShowPlayerDialog(playerid, QuestionSuppression, DIALOG_STYLE_MSGBOX, "Information","Êtes vous sur de vouloir supprimer l'accessoire n°1 ?", "Oui", "Non");
  889. }
  890. if(listitem == 1)
  891. {if(Joueur_Acc[playerid][Emplacement2] == 0)
  892. {SendClientMessage(playerid,ROUGE,"Il n'y a rien à cette emplacement.");
  893. Dialogue_Suppression(playerid);
  894. return 1;
  895. }
  896. SupprChoisit[playerid] = 2;
  897. ShowPlayerDialog(playerid, QuestionSuppression, DIALOG_STYLE_MSGBOX, "Information","Êtes vous sur de vouloir supprimer l'accessoire n°2 ?", "Oui", "Non");
  898. }
  899. if(listitem == 2)
  900. {if(Joueur_Acc[playerid][Emplacement3] == 0)
  901. {SendClientMessage(playerid,ROUGE,"Il n'y a rien à cette emplacement.");
  902. Dialogue_Suppression(playerid);
  903. return 1;
  904. }
  905. SupprChoisit[playerid] = 3;
  906. ShowPlayerDialog(playerid, QuestionSuppression, DIALOG_STYLE_MSGBOX, "Information","Êtes vous sur de vouloir supprimer l'accessoire n°3 ?", "Oui", "Non");
  907. }
  908. if(listitem == 3)
  909. {if(Joueur_Acc[playerid][Emplacement4] == 0)
  910. {SendClientMessage(playerid,ROUGE,"Il n'y a rien à cette emplacement.");
  911. Dialogue_Suppression(playerid);
  912. return 1;
  913. }
  914. SupprChoisit[playerid] = 4;
  915. ShowPlayerDialog(playerid, QuestionSuppression, DIALOG_STYLE_MSGBOX, "Information","Êtes vous sur de vouloir supprimer l'accessoire n°4 ?", "Oui", "Non");
  916. }
  917. if(listitem == 4)
  918. {if(Joueur_Acc[playerid][Emplacement5] == 0)
  919. {SendClientMessage(playerid,ROUGE,"Il n'y a rien à cette emplacement.");
  920. Dialogue_Suppression(playerid);
  921. return 1;
  922. }
  923. SupprChoisit[playerid] = 5;
  924. ShowPlayerDialog(playerid, QuestionSuppression, DIALOG_STYLE_MSGBOX, "Information","Êtes vous sur de vouloir supprimer l'accessoire n°5 ?", "Oui", "Non");
  925. }
  926. if(listitem == 5)
  927. {if(Joueur_Acc[playerid][Emplacement6] == 0)
  928. {SendClientMessage(playerid,ROUGE,"Il n'y a rien à cette emplacement.");
  929. Dialogue_Suppression(playerid);
  930. return 1;
  931. }
  932. SupprChoisit[playerid] = 6;
  933. ShowPlayerDialog(playerid, QuestionSuppression, DIALOG_STYLE_MSGBOX, "Information","Êtes vous sur de vouloir supprimer l'accessoire n°6 ?", "Oui", "Non");
  934. }
  935. if(listitem == 6)
  936. {if(Joueur_Acc[playerid][Emplacement7] == 0)
  937. {SendClientMessage(playerid,ROUGE,"Il n'y a rien à cette emplacement.");
  938. Dialogue_Suppression(playerid);
  939. return 1;
  940. }
  941. SupprChoisit[playerid] = 7;
  942. ShowPlayerDialog(playerid, QuestionSuppression, DIALOG_STYLE_MSGBOX, "Information","Êtes vous sur de vouloir supprimer l'accessoire n°7 ?", "Oui", "Non");
  943. }
  944. if(listitem == 7)
  945. {if(Joueur_Acc[playerid][Emplacement8] == 0)
  946. {SendClientMessage(playerid,ROUGE,"Il n'y a rien à cette emplacement.");
  947. Dialogue_Suppression(playerid);
  948. return 1;
  949. }
  950. SupprChoisit[playerid] = 8;
  951. ShowPlayerDialog(playerid, QuestionSuppression, DIALOG_STYLE_MSGBOX, "Information","Êtes vous sur de vouloir supprimer l'accessoire n°8 ?", "Oui", "Non");
  952. }
  953. if(listitem == 8)
  954. {if(Joueur_Acc[playerid][Emplacement9] == 0)
  955. {SendClientMessage(playerid,ROUGE,"Il n'y a rien à cette emplacement.");
  956. Dialogue_Suppression(playerid);
  957. return 1;
  958. }
  959. SupprChoisit[playerid] = 9;
  960. ShowPlayerDialog(playerid, QuestionSuppression, DIALOG_STYLE_MSGBOX, "Information","Êtes vous sur de vouloir supprimer l'accessoire n°9 ?", "Oui", "Non");
  961. }
  962. }
  963. else
  964. {ShowPlayerDialog(playerid, MenuAccessoire, DIALOG_STYLE_LIST, "Accessoire", "{ADFF2F}1. {FFFFFF}Creer\n{ADFF2F}2. {FFFFFF}Editer\n{ADFF2F}3. {FFFFFF}Supprimer\n{ADFF2F}4. {FFFFFF}Importer", "Continuer", "Quitter");}
  965. }
  966. if(dialogid == ImporterAccessoire)
  967. {
  968. if(response)
  969. {
  970. if(!strlen(inputtext))
  971. {Dialogue_Importation(playerid, 1);
  972. SendClientMessage(playerid, ROUGE, "Mauvaise saisie.");
  973. return 1;
  974. }
  975. if(!fexist(inputtext))
  976. {Dialogue_Importation(playerid, 1);
  977. SendClientMessage(playerid, ROUGE, "Ce fichier n'existe pas.");
  978. return 1;
  979. }
  980. func_ImporterAccessoire(playerid, inputtext);
  981. SendClientMessage(playerid, ROUGE, "Fichier importer avec succés.");
  982. ShowPlayerDialog(playerid, MenuAccessoire, DIALOG_STYLE_LIST, "Accessoire", "{ADFF2F}1. {FFFFFF}Creer\n{ADFF2F}2. {FFFFFF}Editer\n{ADFF2F}3. {FFFFFF}Supprimer\n{ADFF2F}4. {FFFFFF}Importer", "Continuer", "Quitter");
  983. return 1;
  984. }
  985. else{ShowPlayerDialog(playerid, MenuAccessoire, DIALOG_STYLE_LIST, "Accessoire", "{ADFF2F}1. {FFFFFF}Creer\n{ADFF2F}2. {FFFFFF}Editer\n{ADFF2F}3. {FFFFFF}Supprimer\n{ADFF2F}4. {FFFFFF}Importer", "Continuer", "Quitter");}
  986.  
  987. }
  988. return 1;
  989. }
  990. public OnPlayerEditAttachedObject(playerid, response, index, modelid, boneid,Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ,Float:fRotX, Float:fRotY, Float:fRotZ, Float:fScaleX,Float:fScaleY, Float:fScaleZ)
  991. {
  992. if(response)
  993. {jmodelid[playerid] = modelid; jindex[playerid] = index; jboneid[playerid] = boneid;
  994. jfOffsetX[playerid] = fOffsetX; jfOffsetY[playerid] = fOffsetY; jfOffsetZ[playerid] = fOffsetZ;
  995. jfRotX[playerid] = fRotX; jfRotY[playerid] = fRotY; jfRotZ[playerid] = fRotZ;
  996. jfScaleX[playerid] = fScaleX; jfScaleY[playerid] = fScaleY; jfScaleZ[playerid] = fScaleZ;
  997. ShowPlayerDialog(playerid, AccessoireEnregistrer, DIALOG_STYLE_MSGBOX, "Accessoire - Sauvegarde", "Voulez-vous créer un fichier regroupant les données de cette objet ?", "Oui", "Non");
  998. }
  999. }
  1000.  
  1001. // Stock
  1002. stock Dialogue_Edition(playerid)
  1003. {new phrase[500], finphrase[1024];
  1004. new emp1[32],emp2[32],emp3[32],emp4[32],emp5[32],emp6[32],emp7[32],emp8[32],emp9[32];
  1005. if(Joueur_Acc[playerid][Emplacement1] > 0){emp1 = "{FF0000}Utilisé";}else{emp1 = "Vide";}
  1006. if(Joueur_Acc[playerid][Emplacement2] > 0){emp2 = "{FF0000}Utilisé";}else{emp2 = "Vide";}
  1007. if(Joueur_Acc[playerid][Emplacement3] > 0){emp3 = "{FF0000}Utilisé";}else{emp3 = "Vide";}
  1008. if(Joueur_Acc[playerid][Emplacement4] > 0){emp4 = "{FF0000}Utilisé";}else{emp4 = "Vide";}
  1009. if(Joueur_Acc[playerid][Emplacement5] > 0){emp5 = "{FF0000}Utilisé";}else{emp5 = "Vide";}
  1010. if(Joueur_Acc[playerid][Emplacement6] > 0){emp6 = "{FF0000}Utilisé";}else{emp6 = "Vide";}
  1011. if(Joueur_Acc[playerid][Emplacement7] > 0){emp7 = "{FF0000}Utilisé";}else{emp7 = "Vide";}
  1012. if(Joueur_Acc[playerid][Emplacement8] > 0){emp8 = "{FF0000}Utilisé";}else{emp8 = "Vide";}
  1013. if(Joueur_Acc[playerid][Emplacement9] > 0){emp9 = "{FF0000}Utilisé";}else{emp9 = "Vide";}
  1014.  
  1015. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 1 : {FFFFFF}%s\n",emp1);strcat(finphrase, phrase, sizeof(phrase));
  1016. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 2 : {FFFFFF}%s\n",emp2);strcat(finphrase, phrase, sizeof(phrase));
  1017. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 3 : {FFFFFF}%s\n",emp3);strcat(finphrase, phrase, sizeof(phrase));
  1018. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 4 : {FFFFFF}%s\n",emp4);strcat(finphrase, phrase, sizeof(phrase));
  1019. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 5 : {FFFFFF}%s\n",emp5);strcat(finphrase, phrase, sizeof(phrase));
  1020. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 6 : {FFFFFF}%s\n",emp6);strcat(finphrase, phrase, sizeof(phrase));
  1021. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 7 : {FFFFFF}%s\n",emp7);strcat(finphrase, phrase, sizeof(phrase));
  1022. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 8 : {FFFFFF}%s\n",emp8);strcat(finphrase, phrase, sizeof(phrase));
  1023. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 9 : {FFFFFF}%s",emp9);strcat(finphrase, phrase, sizeof(phrase));
  1024. ShowPlayerDialog(playerid, EditerAccessoire, DIALOG_STYLE_LIST, "Accessoire - Edition", finphrase, "Continuer", "Retour");
  1025. return 1;
  1026. }
  1027. stock Dialogue_Importation(playerid, type)
  1028. {
  1029. Dialog_Item[playerid] = type;
  1030. if(type == 1)
  1031. {
  1032. ShowPlayerDialog(playerid, ImporterAccessoire, DIALOG_STYLE_INPUT, "Accessoire - Importer", "Insérez le nom du fichier à importer. (Ex : Accessoire.ini) - {FF0000}N'oubliez pas le '.ini'", "Continuer", "Retour");
  1033. return 1;
  1034. }
  1035. return 1;
  1036. }
  1037. stock Dialogue_Suppression(playerid)
  1038. {new phrase[500], finphrase[1024];
  1039. new emp1[32],emp2[32],emp3[32],emp4[32],emp5[32],emp6[32],emp7[32],emp8[32],emp9[32];
  1040. if(Joueur_Acc[playerid][Emplacement1] > 0){emp1 = "{FF0000}Utilisé";}else{emp1 = "Vide";}
  1041. if(Joueur_Acc[playerid][Emplacement2] > 0){emp2 = "{FF0000}Utilisé";}else{emp2 = "Vide";}
  1042. if(Joueur_Acc[playerid][Emplacement3] > 0){emp3 = "{FF0000}Utilisé";}else{emp3 = "Vide";}
  1043. if(Joueur_Acc[playerid][Emplacement4] > 0){emp4 = "{FF0000}Utilisé";}else{emp4 = "Vide";}
  1044. if(Joueur_Acc[playerid][Emplacement5] > 0){emp5 = "{FF0000}Utilisé";}else{emp5 = "Vide";}
  1045. if(Joueur_Acc[playerid][Emplacement6] > 0){emp6 = "{FF0000}Utilisé";}else{emp6 = "Vide";}
  1046. if(Joueur_Acc[playerid][Emplacement7] > 0){emp7 = "{FF0000}Utilisé";}else{emp7 = "Vide";}
  1047. if(Joueur_Acc[playerid][Emplacement8] > 0){emp8 = "{FF0000}Utilisé";}else{emp8 = "Vide";}
  1048. if(Joueur_Acc[playerid][Emplacement9] > 0){emp9 = "{FF0000}Utilisé";}else{emp9 = "Vide";}
  1049.  
  1050. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 1 : {FFFFFF}%s\n",emp1);strcat(finphrase, phrase, sizeof(phrase));
  1051. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 2 : {FFFFFF}%s\n",emp2);strcat(finphrase, phrase, sizeof(phrase));
  1052. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 3 : {FFFFFF}%s\n",emp3);strcat(finphrase, phrase, sizeof(phrase));
  1053. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 4 : {FFFFFF}%s\n",emp4);strcat(finphrase, phrase, sizeof(phrase));
  1054. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 5 : {FFFFFF}%s\n",emp5);strcat(finphrase, phrase, sizeof(phrase));
  1055. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 6 : {FFFFFF}%s\n",emp6);strcat(finphrase, phrase, sizeof(phrase));
  1056. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 7 : {FFFFFF}%s\n",emp7);strcat(finphrase, phrase, sizeof(phrase));
  1057. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 8 : {FFFFFF}%s\n",emp8);strcat(finphrase, phrase, sizeof(phrase));
  1058. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 9 : {FFFFFF}%s",emp9);strcat(finphrase, phrase, sizeof(phrase));
  1059. ShowPlayerDialog(playerid, SupprAccessoire, DIALOG_STYLE_LIST, "Accessoire - Suppression", finphrase, "Supprimer", "Quitter");
  1060. return 1;
  1061. }
  1062. stock Dialogue_EmplacementCorp(playerid)
  1063. {new phrase[1024], finphrase[1024];
  1064. format(phrase, sizeof(phrase),"{ADFF2F}1. {FFFFFF}Dos\n");strcat(finphrase, phrase, sizeof(phrase));
  1065. format(phrase, sizeof(phrase),"{ADFF2F}2. {FFFFFF}Tête\n");strcat(finphrase, phrase, sizeof(phrase));
  1066. format(phrase, sizeof(phrase),"{ADFF2F}3. {FFFFFF}Bras Gauche\n");strcat(finphrase, phrase, sizeof(phrase));
  1067. format(phrase, sizeof(phrase),"{ADFF2F}4. {FFFFFF}Bras Droit\n");strcat(finphrase, phrase, sizeof(phrase));
  1068. format(phrase, sizeof(phrase),"{ADFF2F}5. {FFFFFF}Main Gauche\n");strcat(finphrase, phrase, sizeof(phrase));
  1069. format(phrase, sizeof(phrase),"{ADFF2F}6. {FFFFFF}Main Droite\n");strcat(finphrase, phrase, sizeof(phrase));
  1070. format(phrase, sizeof(phrase),"{ADFF2F}7. {FFFFFF}Cuisse Gauche\n");strcat(finphrase, phrase, sizeof(phrase));
  1071. format(phrase, sizeof(phrase),"{ADFF2F}8. {FFFFFF}Cuisse Droite\n");strcat(finphrase, phrase, sizeof(phrase));
  1072. format(phrase, sizeof(phrase),"{ADFF2F}9. {FFFFFF}Pied Gauche\n");strcat(finphrase, phrase, sizeof(phrase));
  1073. format(phrase, sizeof(phrase),"{ADFF2F}10. {FFFFFF}Pied Droit\n");strcat(finphrase, phrase, sizeof(phrase));
  1074. format(phrase, sizeof(phrase),"{ADFF2F}11. {FFFFFF}Mollet Droit\n");strcat(finphrase, phrase, sizeof(phrase));
  1075. format(phrase, sizeof(phrase),"{ADFF2F}12. {FFFFFF}Mollet Gauche\n");strcat(finphrase, phrase, sizeof(phrase));
  1076. format(phrase, sizeof(phrase),"{ADFF2F}13. {FFFFFF}Avant bras gauche\n");strcat(finphrase, phrase, sizeof(phrase));
  1077. format(phrase, sizeof(phrase),"{ADFF2F}14. {FFFFFF}Avant bras droit\n");strcat(finphrase, phrase, sizeof(phrase));
  1078. format(phrase, sizeof(phrase),"{ADFF2F}15. {FFFFFF}Clavicule gauche\n");strcat(finphrase, phrase, sizeof(phrase));
  1079. format(phrase, sizeof(phrase),"{ADFF2F}16. {FFFFFF}Clavicule Droite\n");strcat(finphrase, phrase, sizeof(phrase));
  1080. format(phrase, sizeof(phrase),"{ADFF2F}17. {FFFFFF}Cou\n");strcat(finphrase, phrase, sizeof(phrase));
  1081. format(phrase, sizeof(phrase),"{ADFF2F}18. {FFFFFF}Machoire");strcat(finphrase, phrase, sizeof(phrase));
  1082. ShowPlayerDialog(playerid, EmplacementAccCorp, DIALOG_STYLE_LIST, "Emplacement du Corp", finphrase, "Continuer", "Retour");
  1083. }
  1084. stock Dialogue_Fente(playerid)
  1085. {new phrase[500],finphrase[500];
  1086. new emp1[32],emp2[32],emp3[32],emp4[32],emp5[32],emp6[32],emp7[32],emp8[32],emp9[32];
  1087. if(Joueur_Acc[playerid][Emplacement1] > 0){emp1 = "{FF0000}Utilisé";}else{emp1 = "Vide";}
  1088. if(Joueur_Acc[playerid][Emplacement2] > 0){emp2 = "{FF0000}Utilisé";}else{emp2 = "Vide";}
  1089. if(Joueur_Acc[playerid][Emplacement3] > 0){emp3 = "{FF0000}Utilisé";}else{emp3 = "Vide";}
  1090. if(Joueur_Acc[playerid][Emplacement4] > 0){emp4 = "{FF0000}Utilisé";}else{emp4 = "Vide";}
  1091. if(Joueur_Acc[playerid][Emplacement5] > 0){emp5 = "{FF0000}Utilisé";}else{emp5 = "Vide";}
  1092. if(Joueur_Acc[playerid][Emplacement6] > 0){emp6 = "{FF0000}Utilisé";}else{emp6 = "Vide";}
  1093. if(Joueur_Acc[playerid][Emplacement7] > 0){emp7 = "{FF0000}Utilisé";}else{emp7 = "Vide";}
  1094. if(Joueur_Acc[playerid][Emplacement8] > 0){emp8 = "{FF0000}Utilisé";}else{emp8 = "Vide";}
  1095. if(Joueur_Acc[playerid][Emplacement9] > 0){emp9 = "{FF0000}Utilisé";}else{emp9 = "Vide";}
  1096.  
  1097. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 1 : {FFFFFF}%s\n",emp1);strcat(finphrase, phrase, sizeof(phrase));
  1098. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 2 : {FFFFFF}%s\n",emp2);strcat(finphrase, phrase, sizeof(phrase));
  1099. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 3 : {FFFFFF}%s\n",emp3);strcat(finphrase, phrase, sizeof(phrase));
  1100. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 4 : {FFFFFF}%s\n",emp4);strcat(finphrase, phrase, sizeof(phrase));
  1101. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 5 : {FFFFFF}%s\n",emp5);strcat(finphrase, phrase, sizeof(phrase));
  1102. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 6 : {FFFFFF}%s\n",emp6);strcat(finphrase, phrase, sizeof(phrase));
  1103. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 7 : {FFFFFF}%s\n",emp7);strcat(finphrase, phrase, sizeof(phrase));
  1104. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 8 : {FFFFFF}%s\n",emp8);strcat(finphrase, phrase, sizeof(phrase));
  1105. format(phrase, sizeof(phrase),"{ADFF2F}Emplacement 9 : {FFFFFF}%s",emp9);strcat(finphrase, phrase, sizeof(phrase));
  1106. ShowPlayerDialog(playerid, EmplacementAccessoire, DIALOG_STYLE_LIST, "Emplacement", finphrase, "Continuer", "Retour");
  1107. }
  1108. forward func_ImporterAccessoire(playerid, fichier[]);
  1109. public func_ImporterAccessoire(playerid, fichier[])
  1110. {
  1111. new pindex, model, corp, Float:pPos[9];
  1112. if(!fexist(fichier)){return 0;}
  1113.  
  1114. model = dini_Int(fichier,"Model");
  1115. corp = dini_Int(fichier,"EmplacementCorp");
  1116. pPos[0] = dini_Float(fichier,"Decalagex");
  1117. pPos[1] = dini_Float(fichier,"Decalagey");
  1118. pPos[2] = dini_Float(fichier,"Decalagez");
  1119. pPos[3] = dini_Float(fichier,"Rotationx");
  1120. pPos[4] = dini_Float(fichier,"Rotationy");
  1121. pPos[5] = dini_Float(fichier,"Rotationz");
  1122. pPos[6] = dini_Float(fichier,"Taillex");
  1123. pPos[7] = dini_Float(fichier,"Tailley");
  1124. pPos[8] = dini_Float(fichier,"Taillez");
  1125. if(Joueur_Acc[playerid][Emplacement1] == 0){Joueur_Acc[playerid][Emplacement1] = 1;pindex=1;}
  1126. else if(Joueur_Acc[playerid][Emplacement2] == 0){Joueur_Acc[playerid][Emplacement2] = 2;pindex=2;}
  1127. else if(Joueur_Acc[playerid][Emplacement3] == 0){Joueur_Acc[playerid][Emplacement3] = 3;pindex=3;}
  1128. else if(Joueur_Acc[playerid][Emplacement4] == 0){Joueur_Acc[playerid][Emplacement4] = 4;pindex=4;}
  1129. else if(Joueur_Acc[playerid][Emplacement5] == 0){Joueur_Acc[playerid][Emplacement5] = 5;pindex=5;}
  1130. else if(Joueur_Acc[playerid][Emplacement6] == 0){Joueur_Acc[playerid][Emplacement6] = 6;pindex=6;}
  1131. else if(Joueur_Acc[playerid][Emplacement7] == 0){Joueur_Acc[playerid][Emplacement7] = 7;pindex=7;}
  1132. else if(Joueur_Acc[playerid][Emplacement8] == 0){Joueur_Acc[playerid][Emplacement8] = 8;pindex=8;}
  1133. else if(Joueur_Acc[playerid][Emplacement9] == 0){Joueur_Acc[playerid][Emplacement9] = 9;pindex=9;}
  1134.  
  1135. SetPlayerAttachedObject(playerid, pindex, model, corp,pPos[0], pPos[1], pPos[2], pPos[3], pPos[4], pPos[5], pPos[6], pPos[7], pPos[8]);
  1136. return 1;
  1137. }
  1138. // Editeur preview
  1139. stock ChargementTextdrawPreview()
  1140. {
  1141. P_Txt[0] = TextDrawCreate(250.000000, 140.000000, "_");
  1142. TextDrawBackgroundColor(P_Txt[0], 255);
  1143. TextDrawFont(P_Txt[0], 5);
  1144. TextDrawLetterSize(P_Txt[0], 0.500000, 1.000000);
  1145. TextDrawColor(P_Txt[0], -1);
  1146. TextDrawSetOutline(P_Txt[0], 0);
  1147. TextDrawSetProportional(P_Txt[0], 1);
  1148. TextDrawSetShadow(P_Txt[0], 1);
  1149. TextDrawUseBox(P_Txt[0], 1);
  1150. TextDrawBoxColor(P_Txt[0], 0xFFFFFF00);
  1151. TextDrawTextSize(P_Txt[0], 150.000000, 130.000000);
  1152. TextDrawSetSelectable(P_Txt[0], 0);
  1153. TextDrawSetPreviewModel(P_Txt[0],1994);
  1154. TextDrawSetPreviewRot(P_Txt[0], 0.0, 0.0, 0.0, 0.0);
  1155.  
  1156. P_Txt[1] = TextDrawCreate(36.000000, 140.000000, "~b~Rotation X : ~w~0.000000 ~n~~n~~r~Rotation Y : ~w~0.000000 ~n~~n~~g~Rotation Z : ~w~0.000000 ~n~~n~~y~Zoom : ~w~0.000000");
  1157. TextDrawBackgroundColor(P_Txt[1], 255);
  1158. TextDrawFont(P_Txt[1], 2);
  1159. TextDrawLetterSize(P_Txt[1], 0.380000, 1.200000);
  1160. TextDrawColor(P_Txt[1], -1);
  1161. TextDrawSetOutline(P_Txt[1], 1);
  1162. TextDrawSetProportional(P_Txt[1], 1);
  1163. TextDrawSetSelectable(P_Txt[1], 0);
  1164.  
  1165. P_Txt[2] = TextDrawCreate(502.000000, 141.000000, "Rx~n~~n~~n~Ry~n~~n~~n~Rz~n~~n~~n~Zo");
  1166. TextDrawBackgroundColor(P_Txt[2], 255);
  1167. TextDrawFont(P_Txt[2], 2);
  1168. TextDrawLetterSize(P_Txt[2], 0.440000, 1.200000);
  1169. TextDrawColor(P_Txt[2], -1);
  1170. TextDrawSetOutline(P_Txt[2], 1);
  1171. TextDrawSetProportional(P_Txt[2], 1);
  1172. TextDrawSetSelectable(P_Txt[2], 0);
  1173.  
  1174. P_Txt[3] = TextDrawCreate(540.000000, 140.000000, "LD_BEAT:right");
  1175. TextDrawBackgroundColor(P_Txt[3], 255);
  1176. TextDrawFont(P_Txt[3], 4);
  1177. TextDrawLetterSize(P_Txt[3], 0.500000, 1.000000);
  1178. TextDrawColor(P_Txt[3], -1);
  1179. TextDrawSetOutline(P_Txt[3], 0);
  1180. TextDrawSetProportional(P_Txt[3], 1);
  1181. TextDrawSetShadow(P_Txt[3], 1);
  1182. TextDrawUseBox(P_Txt[3], 1);
  1183. TextDrawBoxColor(P_Txt[3], 255);
  1184. TextDrawTextSize(P_Txt[3], 21.000000, 16.000000);
  1185. TextDrawSetSelectable(P_Txt[3], 1);
  1186.  
  1187. P_Txt[4] = TextDrawCreate(467.000000, 140.000000, "LD_BEAT:left");
  1188. TextDrawBackgroundColor(P_Txt[4], 255);
  1189. TextDrawFont(P_Txt[4], 4);
  1190. TextDrawLetterSize(P_Txt[4], 0.500000, 1.000000);
  1191. TextDrawColor(P_Txt[4], -1);
  1192. TextDrawSetOutline(P_Txt[4], 0);
  1193. TextDrawSetProportional(P_Txt[4], 1);
  1194. TextDrawSetShadow(P_Txt[4], 1);
  1195. TextDrawUseBox(P_Txt[4], 1);
  1196. TextDrawBoxColor(P_Txt[4], 255);
  1197. TextDrawTextSize(P_Txt[4], 21.000000, 16.000000);
  1198. TextDrawSetSelectable(P_Txt[4], 1);
  1199.  
  1200. P_Txt[5] = TextDrawCreate(540.000000, 171.000000, "LD_BEAT:right");
  1201. TextDrawBackgroundColor(P_Txt[5], 255);
  1202. TextDrawFont(P_Txt[5], 4);
  1203. TextDrawLetterSize(P_Txt[5], 0.500000, 1.000000);
  1204. TextDrawColor(P_Txt[5], -1);
  1205. TextDrawSetOutline(P_Txt[5], 0);
  1206. TextDrawSetProportional(P_Txt[5], 1);
  1207. TextDrawSetShadow(P_Txt[5], 1);
  1208. TextDrawUseBox(P_Txt[5], 1);
  1209. TextDrawBoxColor(P_Txt[5], 255);
  1210. TextDrawTextSize(P_Txt[5], 21.000000, 16.000000);
  1211. TextDrawSetSelectable(P_Txt[5], 1);
  1212.  
  1213. P_Txt[6] = TextDrawCreate(467.000000, 172.000000, "LD_BEAT:left");
  1214. TextDrawBackgroundColor(P_Txt[6], 255);
  1215. TextDrawFont(P_Txt[6], 4);
  1216. TextDrawLetterSize(P_Txt[6], 0.500000, 1.000000);
  1217. TextDrawColor(P_Txt[6], -1);
  1218. TextDrawSetOutline(P_Txt[6], 0);
  1219. TextDrawSetProportional(P_Txt[6], 1);
  1220. TextDrawSetShadow(P_Txt[6], 1);
  1221. TextDrawUseBox(P_Txt[6], 1);
  1222. TextDrawBoxColor(P_Txt[6], 255);
  1223. TextDrawTextSize(P_Txt[6], 21.000000, 16.000000);
  1224. TextDrawSetSelectable(P_Txt[6], 1);
  1225.  
  1226. P_Txt[7] = TextDrawCreate(540.000000, 203.000000, "LD_BEAT:right");
  1227. TextDrawBackgroundColor(P_Txt[7], 255);
  1228. TextDrawFont(P_Txt[7], 4);
  1229. TextDrawLetterSize(P_Txt[7], 0.500000, 1.000000);
  1230. TextDrawColor(P_Txt[7], -1);
  1231. TextDrawSetOutline(P_Txt[7], 0);
  1232. TextDrawSetProportional(P_Txt[7], 1);
  1233. TextDrawSetShadow(P_Txt[7], 1);
  1234. TextDrawUseBox(P_Txt[7], 1);
  1235. TextDrawBoxColor(P_Txt[7], 255);
  1236. TextDrawTextSize(P_Txt[7], 21.000000, 16.000000);
  1237. TextDrawSetSelectable(P_Txt[7], 1);
  1238.  
  1239. P_Txt[8] = TextDrawCreate(467.000000, 205.000000, "LD_BEAT:left");
  1240. TextDrawBackgroundColor(P_Txt[8], 255);
  1241. TextDrawFont(P_Txt[8], 4);
  1242. TextDrawLetterSize(P_Txt[8], 0.500000, 1.000000);
  1243. TextDrawColor(P_Txt[8], -1);
  1244. TextDrawSetOutline(P_Txt[8], 0);
  1245. TextDrawSetProportional(P_Txt[8], 1);
  1246. TextDrawSetShadow(P_Txt[8], 1);
  1247. TextDrawUseBox(P_Txt[8], 1);
  1248. TextDrawBoxColor(P_Txt[8], 255);
  1249. TextDrawTextSize(P_Txt[8], 21.000000, 16.000000);
  1250. TextDrawSetSelectable(P_Txt[8], 1);
  1251.  
  1252. P_Txt[9] = TextDrawCreate(540.000000, 235.000000, "LD_BEAT:right");
  1253. TextDrawBackgroundColor(P_Txt[9], 255);
  1254. TextDrawFont(P_Txt[9], 4);
  1255. TextDrawLetterSize(P_Txt[9], 0.500000, 1.000000);
  1256. TextDrawColor(P_Txt[9], -1);
  1257. TextDrawSetOutline(P_Txt[9], 0);
  1258. TextDrawSetProportional(P_Txt[9], 1);
  1259. TextDrawSetShadow(P_Txt[9], 1);
  1260. TextDrawUseBox(P_Txt[9], 1);
  1261. TextDrawBoxColor(P_Txt[9], 255);
  1262. TextDrawTextSize(P_Txt[9], 21.000000, 16.000000);
  1263. TextDrawSetSelectable(P_Txt[9], 1);
  1264.  
  1265. P_Txt[10] = TextDrawCreate(467.000000, 236.000000, "LD_BEAT:left");
  1266. TextDrawBackgroundColor(P_Txt[10], 255);
  1267. TextDrawFont(P_Txt[10], 4);
  1268. TextDrawLetterSize(P_Txt[10], 0.500000, 1.000000);
  1269. TextDrawColor(P_Txt[10], -1);
  1270. TextDrawSetOutline(P_Txt[10], 0);
  1271. TextDrawSetProportional(P_Txt[10], 1);
  1272. TextDrawSetShadow(P_Txt[10], 1);
  1273. TextDrawUseBox(P_Txt[10], 1);
  1274. TextDrawBoxColor(P_Txt[10], 255);
  1275. TextDrawTextSize(P_Txt[10], 21.000000, 16.000000);
  1276. TextDrawSetSelectable(P_Txt[10], 1);
  1277.  
  1278. P_Txt[11] = TextDrawCreate(641.000000, 390.000000, "_");
  1279. TextDrawBackgroundColor(P_Txt[11], 255);
  1280. TextDrawFont(P_Txt[11], 1);
  1281. TextDrawLetterSize(P_Txt[11], 0.490000, 5.900001);
  1282. TextDrawColor(P_Txt[11], -1);
  1283. TextDrawSetOutline(P_Txt[11], 0);
  1284. TextDrawSetProportional(P_Txt[11], 1);
  1285. TextDrawSetShadow(P_Txt[11], 1);
  1286. TextDrawUseBox(P_Txt[11], 1);
  1287. TextDrawBoxColor(P_Txt[11], 80);
  1288. TextDrawTextSize(P_Txt[11], 491.000000, 31.000000);
  1289. TextDrawSetSelectable(P_Txt[11], 0);
  1290.  
  1291. P_Txt[15] = TextDrawCreate(251.000000+65.0, 282.000000, "Objet ID : Aucun");
  1292. TextDrawAlignment(P_Txt[15], 2);
  1293. TextDrawBackgroundColor(P_Txt[15], 255);
  1294. TextDrawFont(P_Txt[15], 2);
  1295. TextDrawLetterSize(P_Txt[15], 0.400000, 1.000000);
  1296. TextDrawColor(P_Txt[15], -1);
  1297. TextDrawSetOutline(P_Txt[15], 1);
  1298. TextDrawSetProportional(P_Txt[15], 1);
  1299. TextDrawTextSize(P_Txt[15], 15.0000, 200.0000);
  1300. TextDrawSetSelectable(P_Txt[15], 1);
  1301.  
  1302. P_Txt[13] = TextDrawCreate(500.000000+65.0, 415.000000, "Importer");
  1303. TextDrawAlignment(P_Txt[13], 2);
  1304. TextDrawBackgroundColor(P_Txt[13], 255);
  1305. TextDrawFont(P_Txt[13], 2);
  1306. TextDrawLetterSize(P_Txt[13], 0.400000, 1.000000);
  1307. TextDrawColor(P_Txt[13], -1);
  1308. TextDrawSetOutline(P_Txt[13], 1);
  1309. TextDrawSetProportional(P_Txt[13], 1);
  1310. TextDrawTextSize(P_Txt[13], 15.0000, 80.0000);
  1311. TextDrawSetSelectable(P_Txt[13], 1);
  1312.  
  1313. P_Txt[14] = TextDrawCreate(500.000000+65.0, 398.000000, "Sauvegarder");
  1314. TextDrawAlignment(P_Txt[14], 2);
  1315. TextDrawBackgroundColor(P_Txt[14], 255);
  1316. TextDrawFont(P_Txt[14], 2);
  1317. TextDrawLetterSize(P_Txt[14], 0.400000, 1.000000);
  1318. TextDrawColor(P_Txt[14], -1);
  1319. TextDrawSetOutline(P_Txt[14], 1);
  1320. TextDrawSetProportional(P_Txt[14], 1);
  1321. TextDrawTextSize(P_Txt[14], 15.0000, 80.0000);
  1322. TextDrawSetSelectable(P_Txt[14], 1);
  1323.  
  1324. P_Txt[12] = TextDrawCreate(500.000000+65.0, 430.000000, "Quitter");
  1325. TextDrawAlignment(P_Txt[12], 2);
  1326. TextDrawBackgroundColor(P_Txt[12], 255);
  1327. TextDrawFont(P_Txt[12], 2);
  1328. TextDrawLetterSize(P_Txt[12], 0.400000, 1.000000);
  1329. TextDrawColor(P_Txt[12], -1);
  1330. TextDrawSetOutline(P_Txt[12], 1);
  1331. TextDrawSetProportional(P_Txt[12], 1);
  1332. TextDrawTextSize(P_Txt[12], 15.0000, 80.0000);
  1333. TextDrawSetSelectable(P_Txt[12], 1);
  1334. return 1;
  1335. }
  1336. stock AfficherEditeurPreview(playerid)
  1337. {
  1338. for(new i; i < 16; i ++)
  1339. {
  1340. TextDrawShowForPlayer(playerid, P_Txt[i]);
  1341. }
  1342. PosPreview[0] = 0.0;
  1343. PosPreview[1] = 0.0;
  1344. PosPreview[2] = 0.0;
  1345. PosPreview[3] = 0.0;
  1346. ModelPreview = 0;
  1347. Edit_SelectTextDraw(playerid, 0xFFFFFFFF);
  1348. return 1;
  1349. }
  1350. stock SupprimerEditeurPreview(playerid)
  1351. {
  1352. PremierPreview[playerid] = 0;
  1353. for(new i = 0; i < 16; i ++)
  1354. {
  1355. TextDrawHideForPlayer(playerid, P_Txt[i]);
  1356. }
  1357. return 1;
  1358. }
  1359. stock ModifPreviewModel(playerid, Float:rx, Float:ry, Float:rz, Float:zoom)
  1360. {
  1361. PosPreview[0] = rx;
  1362. PosPreview[1] = ry;
  1363. PosPreview[2] = rz;
  1364. PosPreview[3] = zoom;
  1365. TextDrawSetPreviewRot(P_Txt[0], rx, ry, rz, zoom);
  1366. TextDrawShowForPlayer(playerid, P_Txt[0]);
  1367. return 1;
  1368. }
  1369. stock ModifModelIDPreview(playerid, modelid)
  1370. {
  1371. ModelPreview = modelid;
  1372. TextDrawSetPreviewModel(P_Txt[0],modelid);
  1373. TextDrawShowForPlayer(playerid, P_Txt[0]);
  1374. new phrase[256];
  1375. format(phrase, sizeof(phrase), "Objet ID : %d", ModelPreview);
  1376. TextDrawSetString(P_Txt[15], phrase);
  1377. TextDrawShowForPlayer(playerid, P_Txt[15]);
  1378. return 1;
  1379. }
  1380. stock InitInfosPos(playerid)
  1381. {
  1382. new phrase[256];
  1383. format(phrase, sizeof(phrase), "~b~Rotation X : ~w~%.3f ~n~~n~~r~Rotation Y : ~w~%.3f ~n~~n~~g~Rotation Z : ~w~%.3f ~n~~n~~y~Zoom : ~w~%.3f", PosPreview[0], PosPreview[1], PosPreview[2], PosPreview[3]);
  1384. TextDrawSetString(P_Txt[1], phrase);
  1385. TextDrawShowForPlayer(playerid, P_Txt[1]);
  1386. return 1;
  1387. }
  1388. stock Edit_SelectTextDraw(playerid, color)
  1389. {
  1390. Edit_Select[playerid] = 1;
  1391. SelectTextDraw(playerid, color);
  1392. return 1;
  1393. }
  1394. stock Edit_CancelSelectTextDraw(playerid)
  1395. {
  1396. Edit_Select[playerid] = 0;
  1397. CancelSelectTextDraw(playerid);
  1398. return 1;
  1399. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement