[Include] Dialogs include - Adding new styles to SAMP GUI

Код:
new SKINS[] =
{
	0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,
	50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,
	97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,
	132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,
	167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,
	202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,
	237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,
	272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299
};

CMD:skins(playerid) 
{
	static array[1][1];
    ShowPlayerPreviewModelDialog(playerid, 0, DIALOG_STYLE_PREVMODEL, "Skin selection dialog", SKINS, array, "Select", "Cancel");
    
    return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) 
{
	if (dialogid == 0) 
	{
	    if (response) 
	    	SetPlayerSkin(playerid, SKINS[listitem]); // SKINS[listitem]- returns you the skin id from the index we input as "listitemid"
	}
	
	return 1;
}
This example is not compitable with easyDialogs though? SKINS and array part doesn't work?
Reply

Quote:
Originally Posted by TheBigFive
Посмотреть сообщение
Код:
new SKINS[] =
{
	0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,
	50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,
	97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,
	132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,
	167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,
	202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,
	237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,
	272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299
};

CMD:skins(playerid) 
{
	static array[1][1];
    ShowPlayerPreviewModelDialog(playerid, 0, DIALOG_STYLE_PREVMODEL, "Skin selection dialog", SKINS, array, "Select", "Cancel");
    
    return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) 
{
	if (dialogid == 0) 
	{
	    if (response) 
	    	SetPlayerSkin(playerid, SKINS[listitem]); // SKINS[listitem]- returns you the skin id from the index we input as "listitemid"
	}
	
	return 1;
}
This example is not compitable with easyDialogs though? SKINS and array part doesn't work?
Yes its not, since easydialog doesn't know the function seperately. You have to edit easydialog for that. Or you can use ShowPlayerDialog/Dialog_Show instead, like this:
pawn Код:
CMD:skins(playerid)
{
    new info[sizeof (SKINS) * 5];
    for (new i, j = sizeof (SKINS); i < j; i++)
        format(info, sizeof(info), "%s%i\n", info, SKINS[i]);

    Dialog_Show(playerid, 0, DIALOG_STYLE_PREVMODEL, "Skin selection dialog", info, "Select", "Cancel");
    return 1;
}

Dialog:0(playerid, response, listitem, inputtext[])
{
    if (response)
        SetPlayerSkin(playerid, SKINS[listitem]);
    return 1;
}
Reply

Does it support Objects? will preview Big/Small object nicely?
Reply

Quote:
Originally Posted by Shinja
Посмотреть сообщение
Does it support Objects? will preview Big/Small object nicely?
Yes preview models are for objects/models! And you have this function:
pawn Код:
Dialog_SetListModelRotation(playerid, listitem, Float:x = 0.0, Float:y = 0.0, Float:z = 0.0, Float:zoom = 1.0, color1 = -1, color2 = -1);
You can read the thread for more info.
Reply

I'm having problems with include. By setting a dialog after displaying a dialog of PREVMODEL, it seems that crashes function, and TextDraw are not deleted.

Example
Код:
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PREVMODEL, "Exemplo", "411\tCarros\n520\tAvies\n", "Selecionar", "Cancelar");

... public OnDialogResponse
listitem 0: ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PREVMODEL_LIST, "Exemplo 2", 411\tInfernus\n560\tSultan\n434\tHotknife\n", "Selecionar", "Cancelar");
listitem 1: ShowPlayerDialog(playerid, 3, DIALOG_STYLE_PREVMODEL_LIST, "Exemplo 3", "520\tHydra\n425\tHunter\n", "Selecionar", "Cancelar");
Other errors ...
Код:
pawno\include\dialogs.inc(763) : error 017: undefined symbol "p_DialogModelRot"
pawno\include\dialogs.inc(763) : warning 215: expression has no effect
pawno\include\dialogs.inc(763) : error 001: expected token: ";", but found "]"
pawno\include\dialogs.inc(763) : error 029: invalid expression, assumed zero
pawno\include\dialogs.inc(763) : fatal error 107: too many error messages on one line
In the transition from one to another, ends up happening this problem. http://pastebin.com/WM1AHe27

---
Fix: http://pastebin.com/DdfZF4Ey
Can you fix the problem that happened to me ... You'll notice differences in OnPlayerClickTextDraw and OnPlayerClickPlayerTextDraw. Also in some 'hooks' ...

Also changed CallRemoteFunction by CallLocalFunction
And I changed all the rods by static new (it was taking up too much space in the AMX).

The include is good, and I'm waiting for news and updates

Sorry for bad english, using the translator.
Reply

Quote:
Originally Posted by NicK_
Посмотреть сообщение
I'm having problems with include. By setting a dialog after displaying a dialog of PREVMODEL, it seems that crashes function, and TextDraw are not deleted.

Example
Код:
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PREVMODEL, "Exemplo", "411\tCarros\n520\tAvies\n", "Selecionar", "Cancelar");

... public OnDialogResponse
listitem 0: ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PREVMODEL_LIST, "Exemplo 2", 411\tInfernus\n560\tSultan\n434\tHotknife\n", "Selecionar", "Cancelar");
listitem 1: ShowPlayerDialog(playerid, 3, DIALOG_STYLE_PREVMODEL_LIST, "Exemplo 3", "520\tHydra\n425\tHunter\n", "Selecionar", "Cancelar");
Other errors ...
Код:
pawno\include\dialogs.inc(763) : error 017: undefined symbol "p_DialogModelRot"
pawno\include\dialogs.inc(763) : warning 215: expression has no effect
pawno\include\dialogs.inc(763) : error 001: expected token: ";", but found "]"
pawno\include\dialogs.inc(763) : error 029: invalid expression, assumed zero
pawno\include\dialogs.inc(763) : fatal error 107: too many error messages on one line
In the transition from one to another, ends up happening this problem. http://pastebin.com/WM1AHe27

---
Fix: http://pastebin.com/DdfZF4Ey
Can you fix the problem that happened to me ... You'll notice differences in OnPlayerClickTextDraw and OnPlayerClickPlayerTextDraw. Also in some 'hooks' ...

Also changed CallRemoteFunction by CallLocalFunction
And I changed all the rods by static new (it was taking up too much space in the AMX).

The include is good, and I'm waiting for news and updates

Sorry for bad english, using the translator.
Thanks for reporting. The error has been fixed.

Update v2.7.3:
- Fixed showing dialog right after under OnDialogResponse.
- Renamed Dialog_SetListModelRotation to Dialog_SetModelRot.
- Also the textdraws are now built on a base resolution of 1080p instead of 900p (because most people play on 1080p).
Reply

Quote:
Originally Posted by Gammix
Посмотреть сообщение
Thanks for reporting. The error has been fixed.

Update v2.7.3:
- Fixed showing dialog right after under OnDialogResponse.
- Renamed Dialog_SetListModelRotation to Dialog_SetModelRot.
- Also the textdraws are now built on a base resolution of 1080p instead of 900p (because most people play on 1080p).
You just made a small mistake. From there request on GitHub.
Код:
new listitem = p_Dialog[playerid][E_PLAYER_DIALOG_LISTITEMS];
Would be
Код:
new listitem = p_Dialog[playerid][E_PLAYER_DIALOG_LISTITEM_ID];
---
Dialog_SetModelRot How do you use it?
Only successful using DIALOG STYLE PREVMODEL .. as LIST no success.

--
Another bug ... Fix this by changing
Код:
if (p_Dialog[playerid][E_PLAYER_DIALOG_STYLE] == DIALOG_STYLE_PREVMODEL)
    index = listitem - ((listitem / 24) * 24);
else
    index = listitem - ((listitem / 5) * 5);
Reply

So "DIALOG_STYLE_PREVMODEL" only shows skin IDs? I'm trying to make it show object models, but it keeps showing skins. Impossible to make it show objects?
Reply

Quote:
Originally Posted by Dutheil
Посмотреть сообщение
There is a bug with the shadow (I think, because this is not very esthetic) :



The code :
PHP код:
new
    
models[] = {11461},
    
labels[][] = {"Tower"};
ShowPlayerPreviewModelDialog(playerid0DIALOG_STYLE_PREVMODEL"Jeux"modelslabels"Ok""Annuler"); 
Last version very bugged.
Reply

Quote:
Originally Posted by Dutheil
Посмотреть сообщение
There is a bug with the shadow (I think, because this is not very esthetic) :



The code :
PHP код:
new
    
models[] = {11461},
    
labels[][] = {"Tower"};
ShowPlayerPreviewModelDialog(playerid0DIALOG_STYLE_PREVMODEL"Jeux"modelslabels"Ok""Annuler"); 
That's how the textdraw is designed in last version. You can very easily change this by modifying the textdaw properties in the following line of code (from the include):
pawn Код:
p_DialogCompnent[playerid][E_DIALOG_COMPONENT_LABEL][i] = Dialog_Create(playerid, base[0] + 2.000000, base[1] + 1.000000, "", 255, 1, 0.140000, 0.899999, -36, 0, 0, 1, 2, 0);
(Look at "Dialog_Create" for arguments help)

Quote:
Originally Posted by eco1999
Посмотреть сообщение
Last version very bugged.
The problem stated by Dutheil isn't called a bug but a personal design choice. I didn't find any bugs with the latest version and none have been reported either. Let me know if you have experienced any.
Reply

Quote:
Originally Posted by Gammix
Посмотреть сообщение
The problem stated by Dutheil isn't called a bug but a personal design choice.
Dont choose that its an kind of ugly...
Reply

Quote:
Originally Posted by PT
Посмотреть сообщение
Dont choose that its an kind of ugly...
Well i'll add the outline in next update!
Reply

Quote:
Originally Posted by Gammix
Посмотреть сообщение
Well i'll add the outline in next update!
Please add Easy Dialog compatibility.
Reply

Quote:
Originally Posted by eco1999
Посмотреть сообщение
Please add Easy Dialog compatibility.
The compatibility has always been there.

Example:
pawn Код:
#include <dialogs>
#include <easydialog>

// Showing a preview model dialog
Dialog_Show(playerid, TEST, DIALOG_STYLE_PREVMODEL, "test", "0\n1\n2", "Select", "");

// Handling response
Dialog:TEST(playerid, response, listitem, inputtext[])
{
    SetPlayerSkin(playerid, listitem);
}
Only backdraw is "ShowPlayerPreviewModelDialog", Dialog_Show cannot support arrays (2 arguments extra). You might have to edit the easydialog include to add support which would be an easy job.
Reply

Quote:
Originally Posted by Gammix
Посмотреть сообщение
The compatibility has always been there.

Example:
pawn Код:
#include <dialogs>
#include <easydialog>

// Showing a preview model dialog
Dialog_Show(playerid, TEST, DIALOG_STYLE_PREVMODEL, "test", "0\n1\n2", "Select", "");

// Handling response
Dialog:TEST(playerid, response, listitem, inputtext[])
{
    SetPlayerSkin(playerid, listitem);
}
Only backdraw is "ShowPlayerPreviewModelDialog", Dialog_Show cannot support arrays (2 arguments extra). You might have to edit the easydialog include to add support which would be an easy job.
This is not working properly. Try.
Reply

Quote:
Originally Posted by Gammix
Посмотреть сообщение
Well i'll add the outline in next update!
Put just an outline and no shadow
Reply

Its so and so small. Images and textS doesnt look good on screen. Project is definetly amazing but why you worked small that much. i still need to use mselection without labels... damned.
Is there a way to show 3 item per column and bigger texts. (on header too)
Reply

How i can change all listitems rotation and zoom?
Reply

Wrong thread sorry
Reply

Hello, I'm having a problem with the Model ID's. I'm using like this:

Код:
{"Milk", 19570},
For the Milk ModelID is showing me the id 1957 and not the 19570 it only gets 4 numbers not the five numbers.
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)