errorai

Šiame forume rašomi vartotojų klausimai/problemos su kuriomis jie susidūrė kuriant pluginus.
Post Reply
User avatar
aurimasko
Flooderis arba specialistas
Posts: 736
Joined: 2010 Sep 04 08:45

errorai

Post by aurimasko »

Code: Select all

 L 11/05/2010 - 14:40:56: [HAMSANDWICH] Invalid entity (131)L 11/05/2010 - 14:40:57: [AMXX] Displaying debug trace (plugin "jbextreme.amxx")L 11/05/2010 - 14:40:57: [AMXX] Run time error 10: native error (native "ExecuteHamB")L 11/05/2010 - 14:40:57: [AMXX]    [0] jbextreme.sma::jail_open (line 1694)L 11/05/2010 - 14:40:57: [AMXX]    [1] jbextreme.sma::check_freeday (line 1434)   
Kaip pataisyti?


Eilutė:

Code: Select all

 public jail_openas_(tempid){static ifor(i = 0; i < sizeof(g_Buttons); i++){    if(g_Buttons[i])    {        ExecuteHamB(Ham_Use, g_Buttons[i], 0, 0, 1, 1.0) // šita        entity_set_float(g_Buttons[i], EV_FL_frame, 0.0)    }}}   

newb
Pluginų patvirtintojas
Posts: 1047
Joined: 2010 Sep 23 21:43
Location: Wonderland
Contact:

Re: errorai

Post by newb »

Nezinau ka daro sita funkcija, bet vel gauni id, ir bandai visiem kazka keist ^^
P.S. Naudot static i nera teisingai, ir i = 0 irgi nerasoma, nes i ir taip bus 0.

User avatar
aaarnas
Vyr. diskusijų administratorius
Posts: 3891
Joined: 2010 Aug 31 13:21
Skype: fiarno
Contact:

Re: errorai

Post by aaarnas »

Vienas dalykas, for cikle visada turi priskirti reikšmę. Beje esu skaitęs, kad kuriant kintamąjį su static atrodo reikia visuomet nustatyti reikšmę, nes atmintyje gali būti užsilikusi senoji reikšmė.

Klaidą rodo, nes ant 0 iškvieti ExecuteHamB funkciją.

Tavo skriptas yra visiškai nelogiškas. Pagal entity rikiavimus:
0 - serveris
1-32 - žaidėjai
33 > pasaulio entity
Tai čia prasideda min nuo 33
Palikau CS pasaulį ;/ . Nebepasiekiamas.

newb
Pluginų patvirtintojas
Posts: 1047
Joined: 2010 Sep 23 21:43
Location: Wonderland
Contact:

Re: errorai

Post by newb »

aaarnas wrote:Vienas dalykas, for cikle visada turi priskirti reikšmę.
Nori pasakyt kad taip neteisingai ? >_<

Code: Select all

for(new i; i < 10; i++)

User avatar
aurimasko
Flooderis arba specialistas
Posts: 736
Joined: 2010 Sep 04 08:45

Re: errorai

Post by aurimasko »

aaarnas wrote:Vienas dalykas, for cikle visada turi priskirti reikšmę. Beje esu skaitęs, kad kuriant kintamąjį su static atrodo reikia visuomet nustatyti reikšmę, nes atmintyje gali būti užsilikusi senoji reikšmė.

Klaidą rodo, nes ant 0 iškvieti ExecuteHamB funkciją.

Tavo skriptas yra visiškai nelogiškas. Pagal entity rikiavimus:
0 - serveris
1-32 - žaidėjai
33 > pasaulio entity
Tai čia prasideda min nuo 33
Tai kurią čia vietą keisti?

User avatar
aaarnas
Vyr. diskusijų administratorius
Posts: 3891
Joined: 2010 Aug 31 13:21
Skype: fiarno
Contact:

Re: errorai

Post by aaarnas »

Apskritai tą funkcija nelogiška. Kada tu nustatai duomenis į g_Buttons ir kokius ?
Palikau CS pasaulį ;/ . Nebepasiekiamas.

User avatar
aurimasko
Flooderis arba specialistas
Posts: 736
Joined: 2010 Sep 04 08:45

Re: errorai

Post by aurimasko »

Čia tik gabaliukas kodo.

Code: Select all

  new g_Buttons[10]public setup_buttons(){new ent[3]new Float:origin[3]new info[32]new pos while((pos <= sizeof(g_Buttons)) && (ent[0] = engfunc(EngFunc_FindEntityByString, ent[0], "classname", "info_player_deathmatch"))){    pev(ent[0], pev_origin, origin)    while((ent[1] = engfunc(EngFunc_FindEntityInSphere, ent[1], origin, CELL_RADIUS)))    {        if(!is_valid_ent(ent[1]))            continue                entity_get_string(ent[1], EV_SZ_classname, info, charsmax(info))        if(!equal(info, "func_door"))            continue                entity_get_string(ent[1], EV_SZ_targetname, info, charsmax(info))        if(!info[0])            continue                if(TrieKeyExists(g_CellManagers, info))        {            TrieGetCell(g_CellManagers, info, ent[2])        }        else        {            ent[2] = engfunc(EngFunc_FindEntityByString, 0, "target", info)        }                if(is_valid_ent(ent[2]) && (in_array(ent[2], g_Buttons, sizeof(g_Buttons)) < 0))        {            g_Buttons[pos] = ent[2]            pos++            break        }    }}TrieDestroy(g_CellManagers)} stock in_array(needle, data[], size){for(new i = 0; i < size; i++){    if(data[i] == needle)        return i}return -1}   

Post Reply

Who is online

Users browsing this forum: No registered users and 15 guests