AddPosPreview(modelid, Float:rx, Float:ry, Float:rz, Float:zoom) Paramиtres : modelid : id de l'objet rx : Rotation x de l'objet dans le preview ry : Rotation y de l'objet dans le preview rz : Rotation z de l'objet dans le preview zoom : Niveau du zoom -> Ne retourne aucune valeur spйcifique. /!\ Les information fournie par cette fonction sont sauvegardй dans un fichier .ini unique pour le modelid insйrй. Vous devez par consйquent crйer dans le dossier scriptfile le dossier "PreviewModel" qui contiendra tout les fichiers .ini. Info : Vous pouvez aussi modifier l'emplacement des fichiers en modifiant dans le code la define "EMPLACEMENT_FICHIER".
GetPosPreview(modelid, &Float:rx, &Float:ry, &Float:rz, &Float:zoom) Paramиtres : modelid : id de l'objet &rx : Retourne la rotation x de l'objet dans le preview &ry : Retourne la rotation y de l'objet dans le preview &rz : Retourne la rotation z de l'objet dans le preview &zoom : Retourne le niveau du zoom -> Retourne les valeurs rx, ry, rz et zoom
new phrase[256], Float:rx, Float:ry, Float:rz, Float:zoom; GetPosPreview(968, rx, ry, rz, zoom); format(phrase, sizeof(phrase), "Modelid : %d - rx : %f, ry : %f, rz : %f, zoom : %f", 968, rx, ry, rz, zoom); SendClientMessage(playerid, 0xFFFFFFFF,phrase);
ChargementPosPreview(modelid) Paramиtres : modelid : id de l'objet а charger (doit кtre situй dans le dossier PreviewModel) -> Retourne la valeur de 1 si l'objet а bientфt йtait chargй sinon retourne 0 si l'objet n'existe pas dans le dossier.
public OnGameModeInit() { ChargementPosPreview(968); return 1; }
public OnGameModeInit() //On charge le textdraw et le ou les infos preview enregistrй { ChargementPosPreview(968); // Chargement du preview de l'objet id 968 Preview_Textdraw = TextDrawCreate(250.000000, 140.000000, "_"); TextDrawBackgroundColor(Preview_Textdraw, 255); TextDrawFont(Preview_Textdraw, 5); TextDrawLetterSize(Preview_Textdraw, 0.500000, 1.000000); TextDrawColor(Preview_Textdraw, -1); TextDrawSetOutline(Preview_Textdraw, 0); TextDrawSetProportional(Preview_Textdraw, 1); TextDrawSetShadow(Preview_Textdraw, 1); TextDrawUseBox(Preview_Textdraw, 1); TextDrawBoxColor(Preview_Textdraw, 0xFFFFFF00); TextDrawTextSize(Preview_Textdraw, 150.000000, 130.000000); TextDrawSetSelectable(Preview_Textdraw, 0); TextDrawSetPreviewModel(Preview_Textdraw, 968); return 1; } public OnPlayerConnect(playerid) // On affiche un preview а la connexion (exemple) { new Float:rx, Float:ry, Float:rz, Float:zoom; GetPosPreview(968, rx, ry, rz, zoom); TextDrawSetSelectable(Preview_Textdraw, 968); TextDrawSetPreviewRot(Preview_Textdraw, rx, ry, rz, zoom); TextDrawShowForPlayer(playerid, Preview_Textdraw); return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { new cmd[128], idx; cmd = strtok(cmdtext, idx); if(strcmp(cmd,"/savepreview",true)==0) { new modelid[128], rx[128], ry[128], rz[128], zoom[128]; modelid = strtok(cmdtext, idx); rx = strtok(cmdtext, idx); ry = strtok(cmdtext, idx); rz = strtok(cmdtext, idx); zoom = strtok(cmdtext, idx); if(!modelid) {SendClientMessage(playerid, 0xFFFFFFFF, "CMD : /savepreview [modelid] [Rx] [Ry] [Rz] [Zoom]"); return 1; } AddPosPreview(modelid, floatstr(rx), floatstr(ry), floatstr(rz), floatstr(zoom)); SendClientMessage(playerid, 0xFFFFFFFF, "Position preview sauvegardй"); return 1; } return 1; }
Bientфt viendra l'йditeur de previewmodel que je rattacherai avec cette include
|
Bah il te faut juste mettre le texdraw en font 5, activй la box, resize la box et utilisй la fonction "TextDrawSetPreviewModel" pour afficher le modelid et "TextDrawSetPreviewRot" pour le zoom et la rotation.
|
if(!ChargementPosPreview(968)) { SendClientMessage(playerid, 0xFFFFFFFF, "Cette objet n'est pas rйpertoriй dans le dossier."); } else { SendClientMessage(playerid, 0xFFFFFFFF, "Cette objet est rйpertoriй dans le dossier."); } return 1;