hlmod.hu
https://hlmod.hu/

Ciklus hiba
https://hlmod.hu/viewtopic.php?f=10&t=3192
Oldal: 1 / 1

Szerző:  kiki [2012.01.22. 08:11 ]
Hozzászólás témája:  Ciklus hiba

Első kérdés Megoldva!!!

Köv kérdés, a handler nem teljesül, szóval kiválasztom a játékost a menübe, de nem teljesül rajta a fgv!

Kód:

public teso(id, menu, item)
{
               
        new menu = menu_create("Valasz pa'rt magadnak", "handlerem")
       
        new i
        new nev[32], tempid[10]
      new iPlayers[32], iNum, player;
        get_players(iPlayers, iNum, "ae", "CT");
      
      if (iNum == 0) {
        client_print(id, print_chat, "Nincs online ct, aki a parod lehetne!");
        return PLUGIN_HANDLED;
      }
       
        for (i=0;i<iNum;i++)
        {
            player=iPlayers[i];
                if (is_user_connected(player))
                {
                  get_user_name(player, nev, 31);
                        num_to_str(player, tempid, 9)
                        g_user_ids[i] = get_user_userid(i)
                        menu_additem(menu, nev, tempid, 0)
                }
        }
       
        menu_display(id, menu, 0)
        return PLUGIN_HANDLED
}

public handlerem(id, menu, item)
{
        if(item == MENU_EXIT)
        {
                menu_display(id, menu, 0)
                //return PLUGIN_HANDLED
        }
       
        new data[6]
       
        new player2 = str_to_num(data)
       
        if (g_user_ids[player2] == get_user_userid(player2))
        {
            if(is_user_alive(player2))
         {
            cs_set_user_team(player2,CS_TEAM_T)
            ExecuteHam(Ham_CS_RoundRespawn,player2)
         }
        }
       
        return PLUGIN_HANDLED
}

Szerző:  Metal [2012.01.23. 18:14 ]
Hozzászólás témája:  Re: Ciklus hiba

Nem értem, mit akarsz csinálni

Kód:
   // ...
   new data[6]
   new player2 = str_to_num(data)

   if (g_user_ids[player2] == get_user_userid(player2))
   // ...


Itt létrehozol egy változót, ami nem kapott értéket (tehát alap értékkel "számol", mivel minden új objektumnak van alapértelmezett konstruktora, ami beállít egy alapértelmezett értéket)

Nagyon ez tűnik nagyon nagy hibának....

Szerző:  kiki [2012.01.23. 18:15 ]
Hozzászólás témája:  Re: Ciklus hiba

szóval azt akarom elérni hogy a menübe ugyebár berakódik az összes online ct és amelyiket kiválasztjuk a menübe, azon teljesüljön a függvény!!

Szerző:  Metal [2012.01.23. 18:18 ]
Hozzászólás témája:  Re: Ciklus hiba

Akkor az item fogja tárolni a kiválasztott játékost.
Mondjuk eleve ugyanaz a hiba a berakásnál is, mindig ugyanaz az id kerül be (tempid)

Szerző:  kiki [2012.01.23. 18:40 ]
Hozzászólás témája:  Re: Ciklus hiba

Oksa, fixed:

Kód:
public teso(id) 
 {
    new menu = menu_create("\rValasz pa'rt magadnak:", "handlerem");

    new players[32], pnum, tempid;

    new szName[32], szTempid[10];
   
   get_players(players, pnum, "ae", "CT");
   
   if (pnum == 0) {
        client_print(id, print_chat, "Nincs online ct, aki a parod lehetne!");
        return PLUGIN_HANDLED;
   }

    for( new i; i<pnum; i++ )
    {
        tempid = players[i];

        get_user_name(tempid, szName, charsmax(szName));
        num_to_str(tempid, szTempid, charsmax(szTempid));

        menu_additem(menu, szName, szTempid, 0);

    }

    menu_display(id, menu, 0);
   return PLUGIN_HANDLED;
 }
 public handlerem(id, menu, item)
 {
    if( item == MENU_EXIT )
    {
        menu_display(id, menu, 0);
    }

    new data[6], szName[64];
    new access, callback;
    menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);

    new tempid = str_to_num(data);

    if( is_user_alive(tempid) )
    {
         user_silentkill(tempid)
         cs_set_user_team(tempid,CS_TEAM_T)
         ExecuteHam(Ham_CS_RoundRespawn,tempid)
    }

    return PLUGIN_HANDLED;
 }

Oldal: 1 / 1 Minden időpont UTC+02:00 időzóna szerinti
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/