Szerző Téma: Több dialog használata  (Megtekintve 952 alkalommal)

dexi

  • Vendég
Több dialog használata
« Dátum: 2011. november 12. - 08:43:12 »
0 Show voters
Hali, TDM modomba szeretném beletenni azt hogy ha belemegyek a pickupba kiírja a dialogot hogy megveszem-e vagy sem. Ez sikerült sõt még a fegyvert is odaadja és a pénzt is levonja meg minden zsír..
Csak 2 dolgot szeretnék megtudni:
Hogy tudom megoldani hogy ne csak egy pickupnál legyen dialog szóval ha odamegyek az AK-hoz és kihozza a dialogot hogy megveszem akkor csak az AK-t adja oda.
Másik: Hogy tudom megoldani hogy ha az illetõnél kevesebb mint 1000$ van akkor ne tudja megvenni.(Szóval ne menyjen minuszba, csak szimplán ne tudja megvenni.)
A pwn-be szereplõ dolgok:
Sor elejére:
[pawn]new ak;
new shot;
new dezi;
new country;
new ak1;
new shot1;
new dezi1;
new country1;[/pawn]
[pawn]public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
if(dialogid == ak1)
 {
    if(response)
     {
GivePlayerWeapon(playerid, 25, 500);
GivePlayerMoney(playerid, -1000);}
}else{//ellentétben
SendClientMessage(playerid, RED, \"Kiléptél a dialogból vásárlás nélkül.\");
}[/pawn]
Ezt szeretném megoldani mindegyikre. Szóval shot1-re dezi1-re és country1-re is.
[pawn]public OnPlayerPickUpPickup( playerid, pickupid )
{
      if( pickupid == ak )
      {
             ShowPlayerDialog(playerid,ak1,DIALOG_STYLE_MSGBOX,\"{00ff00}Fegyver vétel\",\"Megszeretnéd venni a fegyvert?\\nEladni nem lehet!\",\"Megveszem\",\"Mégsem\");
return 1;
      }
      else if( pickupid == shot )
      {
             ShowPlayerDialog(playerid,shot1,DIALOG_STYLE_MSGBOX,\"{00ff00}Fegyver vétel\",\"Megszeretnéd venni a fegyvert?\\nEladni nem lehet!\",\"Megveszem\",\"Mégsem\");
return 1;
      }
      else if( pickupid == country )
      {
            ShowPlayerDialog(playerid,country1,DIALOG_STYLE_MSGBOX,\"{00ff00}Fegyver vétel\",\"Megszeretnéd venni a fegyvert?\\nEladni nem lehet!\",\"Megveszem\",\"Mégsem\");
return 1;
      }
      else if( pickupid == dezi )
      {
            ShowPlayerDialog(playerid,dezi1,DIALOG_STYLE_MSGBOX,\"{00ff00}Fegyver vétel\",\"Megszeretnéd venni a fegyvert?\\nEladni nem lehet!\",\"Megveszem\",\"Mégsem\");
return 1;
      }
      return 1;
}
[/pawn]
És ugye a Pickup készítés, de azt most fölösleges bemásolnom.

Több dialog használata
« Válasz #1 Dátum: 2011. november 12. - 08:48:00 »
0 Show voters
A változóknak nem adtál meg értéket. A kezdõérték mindig 0 és e miatt ütköznek a dialógusok.
Én inkább definicióban adnám meg az értékeket mert az fix.

dexi

  • Vendég
Több dialog használata
« Válasz #2 Dátum: 2011. november 12. - 08:48:36 »
0 Show voters
Letudnád írni légyszi hogy mit hova írjak? 

Több dialog használata
« Válasz #3 Dátum: 2011. november 12. - 08:50:14 »
+1 Show voters
[pawn]
new ak;
new shot;
new dezi;
new country;
#define ak1 1
#define shot1 2
#define dezi1 3
#define country 4
[/pawn]

dexi

  • Vendég
Több dialog használata
« Válasz #4 Dátum: 2011. november 12. - 08:55:49 »
0 Show voters
[pawn]public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
if(dialogid == ak1)
 {
    if(response)
     {
GivePlayerWeapon(playerid, 25, 500);
GivePlayerMoney(playerid, -1000);}
}else{//ellentétben
SendClientMessage(playerid, RED, \"Kiléptél a dialogból vásárlás nélkül.\");}
if(dialogid == shot1)
 {
    if(response)
     {
GivePlayerWeapon(playerid, 30, 500);
GivePlayerMoney(playerid, -1000);}
}else{//ellentétben
SendClientMessage(playerid, RED, \"Kiléptél a dialogból vásárlás nélkül.\");
}
}
[/pawn]
NA mostmeg ezzel vannak gondjaim...://

Több dialog használata
« Válasz #5 Dátum: 2011. november 12. - 08:57:16 »
0 Show voters
Az sorelcsúszáson kívül más hibát én nem látok. Mi a baj ezekkel?

dexi

  • Vendég
Több dialog használata
« Válasz #6 Dátum: 2011. november 12. - 09:01:01 »
0 Show voters
Nem hozza be a dialogot hiába megyek rá a pickupra... viszont ha rámegyek arra amit sikerült betennem odaadja a fegyvert és Kiírja hogy kiléptem a dialogból vásárlás nélkül.

Több dialog használata
« Válasz #7 Dátum: 2011. november 12. - 09:05:12 »
0 Show voters
Idézetet írta: dexi date=1321084861\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"13294\" data-ipsquote-contentclass=\"forums_Topic
Nem hozza be a dialogot hiába megyek rá a pickupra... viszont ha rámegyek arra amit sikerült betennem odaadja a fegyvert és Kiírja hogy kiléptem a dialogból vásárlás nélkül.
 
Mivel mind ugyan azt a logikai elvet használja ezért, hogy egyik nem megy másik megy igen érdekes hiba forrás. Próbáld a betûméretes elkülönítést, tehát nyomtatott betûvel a definíciókat.
Mivel a dialog stílusát nem adtad meg ezért nem tudom, hogy az else most melyik gombra fut le vagy te, hogy szeretnéd. Kérlek annak a forrását is tüntesd fel addig segíteni nem tudok.

dexi

  • Vendég
Több dialog használata
« Válasz #8 Dátum: 2011. november 12. - 09:15:36 »
0 Show voters
Az else a Mégsem gombra \"lép érvénybe\" ha minden igaz.

Dupla hozzászólás automatikusan összefûzve. ( 2011. november 12. - 10:41:08 )

Gentlemen, tudod rá a megoldást? ^-^
« Utoljára szerkesztve: 2011. november 12. - 10:41:08 írta dexi »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal