GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: [sdc]skyline - 2011. december 03. - 20:19:02

Cím: Dialog
Írta: [sdc]skyline - 2011. december 03. - 20:19:02
Sziasztok!
Azt szeretném megkérdezni, hogy van egy ilyen dialogom:
[pawn]DIALOG_STYLE_MSGBOX[/pawn]
és pl.: Ha a Button1 -re nyom (A Bal oldali gombra) akkor egy általam meghatározott dolog történyen, Ha a Button2 -re nyom (A Jobb odlali gombra) akkor is egy általam meghatérozott dolog történyen, de ne ugyanaz mint a Button 1 nél!
Elõre is köszönöm a segítséget!
Cím: Dialog
Írta: Rammstein - 2011. december 03. - 20:29:43
pl: dialog: bla bla szöveg
alatta 2 választási opcio: Elfogadom(bezárja a menût) Mégsem(kickelje)
ezt akarod?
Cím: Dialog
Írta: [sdc]skyline - 2011. december 03. - 20:46:50
Nem hanem olyat ha Igen re nyom akkor letegye az objetet ha nem re akkor ne tegye le vagy is DeleteSnow

Dupla hozzászólás automatikusan összefûzve. ( 2011. december 03. - 20:47:38 )

meg több célra is kellene
Cím: Dialog
Írta: Bazsi - 2011. december 03. - 20:58:47
Hát szerintem On0ilaogResponse-nál
[pawn]if(response)// They pressed the first button   
{
         switch(dialogid)// Checking what dialog we\'re processing
        {
    case 1:// Our first dialog
           {
                            //itt az elsõ gomb, hogy mit csináljon
                    }
         }
}
else
{
         switch(dialogid)// Checking what dialog we\'re processing
        {
    case 1:// Our first dialog
           {
                            //itt az második gomb, hogy mit csináljon
                    }
         }
[/pawn]
Cím: Dialog
Írta: [sdc]skyline - 2011. december 03. - 20:59:24
köszi! meg nézem!

Dupla hozzászólás automatikusan összefûzve. ( 2011. december 03. - 21:04:58 )

switch(dialogid)

 
a dialogid hejére be írjam itt a dialog idjét?
szerk: nem mûködik :(
Cím: Dialog
Írta: Bazsi - 2011. december 03. - 21:13:47
skyline\" post=\"198320\" timestamp=\"1322942364\"]
köszi! meg nézem!

Dupla hozzászólás automatikusan összefûzve. ( 2011. december 03. - 21:04:58 )

switch(dialogid)

 
a dialogid hejére be írjam itt a dialog idjét?
szerk: nem mûködik :(
 
[/quote]
[pawn]switch(dialogid)[/pawn]
helyett
[pawn]if(dialogid==DIALOG_ID)[/pawn]
Cím: Dialog
Írta: [sdc]skyline - 2011. december 03. - 21:20:06
köszi a DIALOG_ID -hez pl a 5353 kell ugye?
nem értem :S
ezt ezekkel az adatokka lemg tudnád csinálni?:
[pawn]    if (dialogid == connectdialog)
    {
        if (!response)
        {
           DeleteSnow(playerid); //amikor a nem re
            return 1;
        }
        if (listitem==0) //Amikor az igenre nyom
        {
              CreateSnow(playerid);
        }
        return 1;
    }[/pawn]
köszi!
Cím: Dialog
Írta: Bazsi - 2011. december 03. - 21:21:01
Igen, de lehet mondjuk DIALOG_SNOW , ha definiálod
Cím: Dialog
Írta: [sdc]skyline - 2011. december 03. - 21:29:25
ja aj azt tudom ha nem nagy baj meg csinálod úgy ahogy elöbb le írtam? köszi! nekem nem jön össze
Cím: Dialog
Írta: Bazsi - 2011. december 03. - 21:32:51
Nem tudtam tesztelni, mert laptopról írok, remélem jó :D
[pawn]if(response)
{
     if(dialogid==connectdialog)
     {
          DeleteSnow(playerid);
          return 1;
      }
}
else
{
     {
           CreateSnow(playerid);
           return 1;
     }
     return 0;
}[/pawn]
Cím: Dialog
Írta: [sdc]skyline - 2011. december 03. - 21:38:55
oks köszi megnézem
Maga a script warning és error mentes de nem akarja lerakni az objetet :S
Cím: Dialog
Írta: Bazsi - 2011. december 03. - 21:44:01
Hát én megpróbálnék berakni egy SendClientMessage-t és ha azt mutatja, akkor nem a dialoggal van hiba...
Cím: Dialog
Írta: [sdc]skyline - 2011. december 03. - 21:46:46
Ok meg nézem
nem jó az üzenetet se adja ki :S
Cím: Dialog
Írta: Bazsi - 2011. december 03. - 21:57:18
Akkor így:
[pawn]if(dialogid==connectdialog)
{
     if(response)
     {
          DeleteSnow(playerid);
          return 1;
     }
     else
     {
          CreateSnow(playerid);
          return 1;
     }
     return 0;
}[/pawn]
Cím: Dialog
Írta: [sdc]skyline - 2011. december 03. - 22:03:58
Nem jó még teleportot is raktam midnegyikbe nem megy :(
Cím: Dialog
Írta: Bazsi - 2011. december 03. - 22:04:26
Akkor sajnos nem tudom :S
Cím: Dialog
Írta: [sdc]skyline - 2011. december 03. - 22:05:47
azért köszi!
Cím: Dialog
Írta: Bazsi - 2011. december 03. - 22:07:41
Még nézelõdök, hátha találok :)
Pedig elvileg így kéne, nagyon sok regisztrációban van ilyen, csak kickkel:
[pawn]if(dialogid == ReGiStEr)
{
     if(response)   
     {
     }
     else
     {
     }
}[/pawn]
Cím: Dialog
Írta: [sdc]skyline - 2011. december 04. - 07:28:15
Én találtam egy ilyet a samp wikin:
[pawn]
if(!strcmp(cmdtext, \"/relax\", true))
{
    ShowPlayerDialog(playerid, 2, DIALOG_STYLE_MSGBOX, \"Are you sure?\", \"Are you sure you have time to relax?\", \"yes\", \"no\");
    return 1;
}
This will show the dialog with ID 2 (we already used dialogid 1) to the player. The style here is DIALOG_STYLE_MSGBOX.
Now we need to set-up the response again...
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[ ])//Itt a [ ]ilyet egybe csak így mutatja rendesen
{
if(response)// They pressed the first button   
    {
    switch(dialogid)// Checking what dialog were processing
        {
    case 1:// Our first dialog
           {
              switch(listitem)// Checking which item was chosen
           {
               case 0: // The first listitem
               {
                   if(GetPlayerMoney(playerid) < 1) return SendClientMessage(playerid, 0xFFFFFF, \"You dont have enough cash.\");
                   GivePlayerMoney(playerid, -1);
                   SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_SPRUNK);
               }
               case 1: // The second listitem
               {
                   if(GetPlayerMoney(playerid) < 2) return SendClientMessage(playerid, 0xFFFFFF, \"You dont have enough cash.\");
                   GivePlayerMoney(playerid, -2);
                   SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_BEER);
               }
               case 2: // The third listitem
               {
                   if(GetPlayerMoney(playerid) < 3) return SendClientMessage(playerid, 0xFFFFFF, \"You dont have enough cash.\");
                   GivePlayerMoney(playerid, -3);
                   SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_WINE);
               }
           }
           }
            //From here we added things
            case 2:// The new dialog
            {
                 ApplyAnimation(playerid,\"BEACH\",\"Lay_Bac_Loop\",4.1,1,1,1,1,10);//this will let you relax for 10 seconds
            }
            // Till here
}
    }
    return 1;
}[/pawn]
Itt csak azt nem értem miért van a Response alatt 3?

Dupla hozzászólás automatikusan összefûzve. ( 2011. december 04. - 15:46:56 )

Meg oldtam a problémámat! az eggyik script (szintén dialog os) kilõötte a dialogot amit a cfg be utánna írtam ,elé kelelt írni és mükõdik köszönöm midnenkinek!