Mam na serwerze pewien item:
player_item_name[id] = "Tytanowy pancerz" player_item_id[id] = rannum player_b_redirect[id] = random_num(30,35) item_durability[id] = 250 show_hudmessage(id, "Znalazles przedmiot: %s :: Obrazenia zredukowane o %i",player_item_name[id]) }
Do Diablo dodane jest przekazywanie itemów i tu się pojawia haczyk, a więc gdy przekażę go 2 graczowi to on go otrzymuje a ja nadal mam ten item. Takie jakby kopiowanie...
Dodam że taka sprawa występuję tylko z tym itemem.
Myślałem nad usunięciem go z serwera ale jest to dość dobry item i gracze utraciliby go, dlatego najpierw postanowiłem napisać.
I pytanie brzmi czy da się to jakoś naprawić?
Teraz 2 problem:
Przy kompilacji wyskakuje błąd związany z linijkami.
Fragment kodu:
/* ==================================================================================================== */ public item_dagon(id) { if (player_b_dagfired[id]) { set_hudmessage(220, 30, 30, -1.0, 0.40, 0, 3.0, 2.0, 0.2, 0.3, 5) show_hudmessage(id, "Tego przedmiotu mozesz uzyc raz na runde") return PLUGIN_HANDLED } //Target nearest non-friendly player new target = UTIL_FindNearestOpponent(id,600+player_intelligence[id]*20) if (target == -1) return PLUGIN_HANDLED new DagonDamage = player_b_dagon[id]*20 new Red = 0 ; 5468. if (player_b_dagon[id] == 1) Red = 175 5469. else if (player_b_dagon[id] == 2) Red = 225 5470. else if (player_b_dagon[id] > 2) Red = 255 //Dagon damage done is reduced by the targets dextery DagonDamage-=player_dextery[target]*2 if (DagonDamage < 0) DagonDamage = 0 new Hit[3] get_user_origin(target,Hit) //Create Lightning message_begin(MSG_BROADCAST, SVC_TEMPENTITY) write_byte(1) // TE_BEAMENTPOINT write_short(id) write_coord(Hit[0]) write_coord(Hit[1]) write_coord(Hit[2]) write_short(sprite_lgt) write_byte(0) write_byte(1) write_byte(3) write_byte(10) //WITD write_byte(60) write_byte(Red) write_byte(0) write_byte(0) write_byte(100) //BRIGT write_byte(0) message_end() player_b_dagfired[id] = true //Apply damage change_health(target,-DagonDamage,id,"world") Display_Fade(target,2600,2600,0,255,0,0,15) hudmsg(id,2.0,"Twoje ciosy dagon przyjal %i, %i", DagonDamage, player_dextery[target]*2) return PLUGIN_HANDLED } /* ==================================================================================================== */Dopisałem przy linijkach o których mowa w logach bo jest mowa o 3. (5468-5469-5470)
Log z kompilacji:
// E:\Steam\steamapps\mokrot\counter-strike\cstrike_polish\addons\amxmodx\djaplo kompiler\djaplo.sma(5468) : error 022: must be lvalue (non-constant) // E:\Steam\steamapps\mokrot\counter-strike\cstrike_polish\addons\amxmodx\djaplo kompiler\djaplo.sma(5468 -- 5469) : warning 215: expression has no effect // E:\Steam\steamapps\mokrot\counter-strike\cstrike_polish\addons\amxmodx\djaplo kompiler\djaplo.sma(5469) : error 029: invalid expression, assumed zero // E:\Steam\steamapps\mokrot\counter-strike\cstrike_polish\addons\amxmodx\djaplo kompiler\djaplo.sma(5469) : warning 215: expression has no effect // E:\Steam\steamapps\mokrot\counter-strike\cstrike_polish\addons\amxmodx\djaplo kompiler\djaplo.sma(5469) : error 001: expected token: ";", but found "if" // E:\Steam\steamapps\mokrot\counter-strike\cstrike_polish\addons\amxmodx\djaplo kompiler\djaplo.sma(5469) : fatal error 107: too many error messages on one lin e
Prosiłbym o pomoc
Pozdrawiam
Użytkownik Mokrot edytował ten post 25.01.2011 17:19