Kuidas teha värvilist dialoogi
#1
Kuidas teha värvilist dialoogi.

Tahad muuta enda serverit natuke värvilisemaks?

Kui muidu dialoogid näevad välja:
[Image: sa-mp-005.png]

Siis nüüd õpetan ühte lihtsat asja kuidas muuta dialooge värviliseks.

Kõigepealt defineerime ära värvid (ei pea seda tegema aga endal on edaspidi lihtsam)
Code:
#define VHELEROHELINE     "{00FF00}"
#define VROHELINE         "{008000}"
#define VTUMEROHELINE     "{004000}"
#define VPUNANE            "{F00000}"
#define VTUMEPUNANE        "{790000}"
#define VHELEPUNANE        "{F90000}"
#define VKOLLANE         "{FFFF00}"
#define VHELEROOSA        "{FF8080}"
#define VROOSA            "{FF3737}"
#define VHELESININE        "{2D96FF}"
#define VSININE         "{0073E6}"
#define VTUNESININE     "{00356A}"
#define VKULDNE            "{808000}"
#define VLILLA            "{800080}"
#define VHELELILLA        "{CA00CA}"
#define VTUMELILLA        "{5E005E}"
#define VHELEHALL         "{C0C0C0}"
#define VHALL            "{7D7D7D}"
#define VTUMEHALL        "{404040}"
#define VPRUUN            "{663300}"
#define VTUMEPRUUN        "{371C00}"
#define VHELEPRUUN        "{C16100}"
#define VORAANTS        "{FF8000}"
#define VVALGE            "{FFFFFF}"

Või kopeeri siit rohkem värve http://pastebin.com/0zpNsD1P

Edasi hakkame siis lihtsalt dialoogile lisama värvi koode ette.

Kui teeme DIALOG_STYLE_MSGBOX:

Kui ei soovi defineerida värve, siis lisame nii need:
Code:
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{008000}VÄRVILINE DIALOOG", "{5E005E}Nii näeb välja värviline dialoog", "OK", "LOOBU");

Aga kui paneme defineeritud värvidega, siis lisame nii
Code:
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, ""#VROHELINE"VÄRVILINE DIALOOG", ""#VORAANTS"Nii näeb välja värviline dialoog", "OK", "LOOBU");

ja tulemuseks saame:
[Image: sa-mp-001.png]

Või kui teeme DIALOG_STYLE_LIST :
Code:
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST, ""#VORAANTS"VÄRVILINE DIALOOG LIST", ""#VPUNANE"Nii \n"#VROOSA"näeb \n"#VROHELINE"välja \n"#VSININE"värviline \n"#VKOLLANE"dialoog", "OK", "LOOBU");

ja saame tulemuseks:
[Image: sa-mp-002.png]

Või kui teeme DIALOG_STYLE_INPUT :
Code:
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, ""#VROHELINE"VÄRVILINE DIALOOG", ""#VLILLA"Nii näeb välja värviline INPUT", "OK", "LOOBU");

ja saame tulemuseks:
[Image: sa-mp-003.png]

Või kui teeme DIALOG_STYLE_PASSWORD :
Code:
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, ""#VSININE"VÄRVILINE DIALOOG", ""#VROOSA"Nii näeb välja värviline PASSWORD", "OK", "LOOBU");

ja saame tulemuseks:
[Image: sa-mp-004.png]


Kui aga soovime lisada pikemat teksti ja näiteks eri värvidega:
Siis kõigepealt teeme muutujad
Code:
new Pealkiri[35], Tekst[200];

Seejärel teeme valmis teksti:
Code:
format(Pealkiri, 35, ""#VLILLA"%s Võimalik teha pikem tekst\n", Pealkiri);

format(Tekst, 200, "%s "#VROHELINE"Nii saab siis teistmoodi teha\n", Tekst);
format(Tekst, 200, "%s "#VSININE"Eest vahetad ainult värvi ära\n", Tekst);
format(Tekst, 200, "%s "#VROOSA"Nii saad muuta igal real värvi\n", Tekst);

nüüd lisame teksti dialoogi
Code:
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, Pealkiri, Tekst, "OK", "LOOBU");

Ja saame tulemuseks:
[Image: sa-mp-006.png]

Kes siis aru ei saanud, siis point on see et teksti ette lisame
Code:
"#VÄRVINIMI" ehk
""#VROHELINE"Ja edasi tuleb tekst"

Või kui me värve ei defineerinud, siis lisame:
Code:
{värvi kood} ehk
"{00FF00}Ja edasi tuleb tekst"

Loodan et saite aru ja et aitab kedagi. Kui tekib küsimusi või arusaamatusi siis küsige julgelt.
Reply
#2
Aga näiteks kui tahan teha värvilise dialoogi
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, ""#VROHELINE"Server Commands", ""#VORAANTS"[General Commands:]/cmds /teles /report", "OK", "Välju");
Näiteks kui kirjutan cmds siis tuleb küll ,ette dialoog aga mitte värviliselt ja siis lööb server ka veel oma korda Server:Unknown Command. Äkki saad natuke aidata?
Reply
#3
(18.12 2014, 02:02)Galaxy Wrote:  Aga näiteks kui tahan teha värvilise dialoogi
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, ""#VROHELINE"Server Commands", ""#VORAANTS"[General Commands:]/cmds /teles /report", "OK", "Välju");
Näiteks kui kirjutan cmds siis tuleb küll ,ette dialoog aga mitte värviliselt ja siis lööb server ka veel oma korda Server:Unknown Command. Äkki saad natuke aidata?

Oleks vaja täpsemalt sinu ridasi. See et sul tuleb "Server:Unknown Command", see tuleneb sellest et sul pole käsklusele lõppu pandud return 1; aga et ta värviliselt ei tule, et kas sa panid endale need defineerimised ka? mis mu on lisatud. Et kui neid defineerimisi pole siis sul ka ei toimi see. Et näita enda käsklust tervenisti siis saan paremini aru mis sul seal on.
Vaata lisaks!! Minu tehtud õpetused ja funksioonid mida olen teinud ja kokku kogunud!!

SIIT


By Geto244
Reply
#4
CMD:cmds(playerid, prams[])
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, ""#VROHELINE"Server Commands", ""#VORAANTS"[General Commands:]/cmds /teles /report", "OK", "Välju");
return 1;
}
Selline näeb välja.
ja kui kirjutan cmds siis ütleb server Unknown Command ja siis tuleb ette dialoog.
Reply
#5
(19.12 2014, 12:05)Galaxy Wrote:  CMD:cmds(playerid, prams[])
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, ""#VROHELINE"Server Commands", ""#VORAANTS"[General Commands:]/cmds /teles /report", "OK", "Välju");
return 1;
}
Selline näeb välja.
ja kui kirjutan cmds siis ütleb server Unknown Command ja siis tuleb ette dialoog.

Nii vaadates tundub kõik nagu korras olevat. Kas sul teiste käsklustega ei tule seda "Unknown Command"?
Vaata lisaks!! Minu tehtud õpetused ja funksioonid mida olen teinud ja kokku kogunud!!

SIIT


By Geto244
Reply
#6
Noh ainult siis kui Cmds kirjutan ja siis tuleb dialoogiga commandid ette kuid teiste commanditega sellist probleemi pole.
Ma täpselt ei tea mis probleem on kuna Gamemode on 0-list tehtud minu poolt ja tean täpselt mida olen kirjutanud sinna ja natuke juurde teinud.
Reply
#7
(19.12 2014, 20:31)Galaxy Wrote:  Noh ainult siis kui Cmds kirjutan ja siis tuleb dialoogiga commandid ette kuid teiste commanditega sellist probleemi pole.
Ma täpselt ei tea mis probleem on kuna Gamemode on 0-list tehtud minu poolt ja tean täpselt mida olen kirjutanud sinna ja natuke juurde teinud.

Kui sul on see värvide defineerimis fail ilusasti lisatud siis peaks olema kõik korras
Code:
CMD:cmds(playerid, prams[])
{
    ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, ""#VROHELINE"Server Commands", ""#VORAANTS"[General Commands:]/cmds /teles /report", "OK", "Välju");
    return 1;
}
Vaata lisaks!! Minu tehtud õpetused ja funksioonid mida olen teinud ja kokku kogunud!!

SIIT


By Geto244
Reply
#8
(19.12 2014, 22:16)geto244 Wrote:  
(19.12 2014, 20:31)Galaxy Wrote:  Noh ainult siis kui Cmds kirjutan ja siis tuleb dialoogiga commandid ette kuid teiste commanditega sellist probleemi pole.
Ma täpselt ei tea mis probleem on kuna Gamemode on 0-list tehtud minu poolt ja tean täpselt mida olen kirjutanud sinna ja natuke juurde teinud.

Kui sul on see värvide defineerimis fail ilusasti lisatud siis peaks olema kõik korras
Code:
CMD:cmds(playerid, prams[])
{
    ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, ""#VROHELINE"Server Commands", ""#VORAANTS"[General Commands:]/cmds /teles /report", "OK", "Välju");
    return 1;
}
Värvid on ilusti pandud kuid mul on neid palju.... aga ikkagi kui kirjutan cmds siis ikka ei tule need värvilised vaid lihtsalt tavalit värvi hallid.
//E Aa sain nüüd korda sain teada mis viga oli mul oli nii palju värve ja eks ta segas neid defineeritud värve mis oli täitsa all mis oleks pidanud esimesed olema!
nüüd kui kirjutan /cmds siis on ilusti värvidega!!
Aga kuidas ma saaksin nii teha et kui kirjutan /cmds siis tuleb ette dialoog ja dialogois näitab:
1.[General Commands:]
2.[Teleport Commands:]
3.[Anim Commands:]
??
Tean ,et saab ka natuke teistmoodi teha mingi äkki vist oli nii:
CMD:cmds(playerid, params[])
{
format(Pealkiri, 35, ""#VVALGE"%s Server Commands:\n", Pealkiri);

format(Tekst, 200, "%s "#VSININE"[General Commands:]<<Siia järele commancid>>\n", Tekst);
format(Tekst, 200, "%s "#VSININE"[Teleport Commands:]<<Siia järele commancid>>\n", Tekst);
format(Tekst, 200, "%s "#VSININE"[Anim Commands:]<<Siia järele commancid>>\n", Tekst);
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, Pealkiri, Tekst, "Okey", "Cancel");
return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)