Page 1 of 1

Dialog problema

Posted: 24 May 2011, 19:43
by Nezinamais.
Sveiki, man atkal ir problēma. Šoreiz man ir ar dialogiem problema.
Kad es panem dialogu tad man uzreiz nostradaa visi dialogi. Tāka ir viens dialogs bet kad es panemu izvēlos no tā dialoga piemēram kad ieročus pērku panemu m4 un uzreiz man arī pārējie dialogi nostrādā.

Ja jūs neko nesapratāt no mana teiktā varbut sapratisiet no video:

Re: Dialog problema

Posted: 24 May 2011, 20:20
by [OFF]katelmaisis
Kodu neesi ieplānojis iedot? Runa ir tieši par OnDialogResponse un to daļu, kas dialogu izsauc.

Re: Dialog problema

Posted: 24 May 2011, 20:46
by Nezinamais.

Code: Select all

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == WEAPONS)
{
if(response)
{
if(listitem == 0)
{
if(GetPlayerMoney(playerid)  3500) {
SendClientMessage(playerid,0x00D900FF,"Apsveicam! Jus nopirkat maju par 3500g");
SendClientMessage(playerid,0x00D900FF,"*** Tagad driksti nem JESTER, kas atrodas garaza!");
maja[playerid] ++;
SetPlayerScore(playerid,GetPlayerScore(playerid)-3500);
}else{
HideMenuForPlayer(playerid);
}
}
}
return 1;
}

Code: Select all

if(pickupid == WEAPONS2) {
ShowPlayerDialog(playerid,WEAPONS, DIALOG_STYLE_LIST, "{FF0000}Nelegalais Ierocu tirgus", "SDPistol {26863C}400$ \n Deagle {26863C}400$\nSawnOff {26863C}500$ \n M4 {26863C}550$ \n AK47 {26863C}550$ \n Rifle {26863C}600$ \n Tec9 {26863C}450$\nUZI {26863C}450$ \n Mp5 {26863C}450$ \n C4 bomba {26863C}800$", "Pirkt", "Acelt");
}
if(pickupid == narko2) {
ShowPlayerDialog(playerid,narko, DIALOG_STYLE_LIST, "{FF0000}Nelegalas narkotikas.", "Kokains {26863C}1200$ \n Ekstazi {26863C}1250$", "Pirkt", "Acelt");
}
if(pickupid == buycars2) {
ShowPlayerDialog(playerid,buycars, DIALOG_STYLE_LIST, "{FF0000}Legalas masinas.", "Tunets Elegy {26863C}5050$ \n Tunets Sultan {26863C}5000$ \n Tunets Flash {26863C}6000$ \n Tunets Jester {26863C}5500$ \n Tunets Hotring racer {26863C}6050$", "Pirkt", "Acelt");
}
if(pickupid == majap) {
ShowPlayerDialog(playerid,one, DIALOG_STYLE_MSGBOX, "{FF0000}Maja.", "Parasta māja! \n Garažā tūnēts auto - JESTER! \n {FF0000}Māja maksā 5300g", "Pirkt", "Nepirkt");
}

Code: Select all

new WEAPONS;
new WEAPONS2;
new narko;
new narko2;
new buycars;
new buycars2;
[/code]

Re: Dialog problema

Posted: 24 May 2011, 23:09
by Crone
Man slinkums bija lasīt to kodu, bet pārbaudi to, ka katram dialogam ir savs ID. Nevar būt vairākiem dialogiem viens un tas pats ID. Iespējams problēma ir dēļ tā.

Re: Dialog problema

Posted: 25 May 2011, 09:03
by Nezinamais.
Itkā katram ir priekšā
if(dialogid == WEAPONS)
if(dialogid == narko)
if(dialogid == buycars)
if(dialogid == one)

Re: Dialog problema

Posted: 25 May 2011, 18:44
by Crone
Es biju domājis to, ka tu varbūt esi šajā kodā

Code: Select all

ShowPlayerDialog(playerid,dialogid,DIALOG_STYLE_LIST,".............".
salicis kautkur vienādus ID.

Re: Dialog problema

Posted: 25 May 2011, 19:46
by Nezinamais.
Nop Katrs svadaks

ShowPlayerDialog(playerid,one, DIALOG_STYLE_LIST, "....", "...", "Pirkt", "Nepirkt");
}
ShowPlayerDialog(playerid,buycars, DIALOG_STYLE_LIST, "....", "...", "Pirkt",
"Nepirkt");
}
ShowPlayerDialog(playerid,narko, DIALOG_STYLE_LIST, "....", "...", "Pirkt", "Nepirkt");
}
ShowPlayerDialog(playerid,WEAPONS, DIALOG_STYLE_LIST, "....", "...", "Pirkt", "Nepirkt");
}

Re: Dialog problema

Posted: 01 Jun 2011, 21:58
by Nezinamais.
Kāds lūdzu palīdzēs? Vai visi aizmirsuši par mani? :?

Edit: Atvainojos par DPost

Re: Dialog problema

Posted: 04 Jun 2011, 12:55
by SaW
lieto switch.
Piemērs;
no
if(listitem == 0)
{
if(GetPlayerMoney(playerid) < 399) return SendClientMessage(playerid, 0xFF0000FF, "Jums nepietiek naudas!");
SendClientMessage(playerid,0x00D900FF,"Jūs nopirkāt SDPistol par 400$.");
GivePlayerWeapon(playerid,23,500);
GivePlayerMoney(playerid,-400);
}
if(listitem == 1)
{
if(GetPlayerMoney(playerid) < 399) return SendClientMessage(playerid, 0xFF0000FF, "Jums nepietiek naudas!");
SendClientMessage(playerid,0x00D900FF,"Jūs nopirkāt Deagle par 400$.");
GivePlayerWeapon(playerid,24,500);
GivePlayerMoney(playerid,-400);
}
uz
switch(listitem)
{
case 0:
{
if(GetPlayerMoney(playerid) < 399) return SendClientMessage(playerid, 0xFF0000FF, "Jums nepietiek naudas!");
SendClientMessage(playerid,0x00D900FF,"Jūs nopirkāt SDPistol par 400$.");
GivePlayerWeapon(playerid,23,500);
GivePlayerMoney(playerid,-400);
}
case 1:
{
if(GetPlayerMoney(playerid) < 399) return SendClientMessage(playerid, 0xFF0000FF, "Jums nepietiek naudas!");
SendClientMessage(playerid,0x00D900FF,"Jūs nopirkāt Deagle par 400$.");
GivePlayerWeapon(playerid,24,500);
GivePlayerMoney(playerid,-400);
}