[ROZWIĄZANE] Kiedy używamy "return"
Najlepsza odpowiedź Fili:P 24.04.2013 17:40
Ten error mówi że w jednym miejscu w kodzie używasz "return", a w innym "return wartość". Przyjmij jeden sposób na plugin.
Przejdź do postuKoniarek 24.04.2013
Siemka, chcę się dowiedzieć kiedy używamy return,return PLUGIN_HANDLED itp... Mam kod niżej ale sypią się błędy
public toucharrow(arrow, id) { new kid = entity_get_edict(arrow, EV_ENT_owner) new lid = entity_get_edict(arrow, EV_ENT_enemy) if(is_user_alive(id)){ if(kid == id || lid == id) return entity_set_edict(arrow, EV_ENT_enemy,id) new Float:dmg = entity_get_float(arrow,EV_FL_dmg) entity_set_float(arrow,EV_FL_dmg,(dmg*3.0)/5.0) if(get_cvar_num("mp_friendlyfire") == 0 && get_user_team(id) == get_user_team(kid)) return if(anty_bolt[id] > 0) return PLUGIN_CONTINUE; //if(anty_bolt[id] > 0) continue; //if(anty_bolt[id] > 0) return PLUGIN_HANDLED; Effect_Bleed(id,248) bowdelay[kid] -= 0.5 - floatround(player_intelligence[kid]/5.0) ExecuteHam(Ham_TakeDamage,id,kid,kid,dmg,(1<<1) | (1<<12)) message_begin(MSG_ONE,get_user_msgid("ScreenShake"),{0,0,0},id); write_short(7<<14); write_short(1<<13); write_short(1<<14); message_end(); emit_sound(id, CHAN_ITEM, "weapons/knife_hit4.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) if(dmg<30) remove_entity(arrow) } }
error 078: function uses both "return" and "return <value>"
Najlepsza odpowiedź
Fili:P
24.04.2013
Ten error mówi że w jednym miejscu w kodzie używasz "return", a w innym "return wartość". Przyjmij jeden sposób na plugin.
K!113r
24.04.2013
Kiedy używamy return? Kiedy coś zwracamy.
_HANDLED, _CONTINUE, _HANDLED_MAIN? Zależy co chcesz osiągnąć, wałkowane to już było parę razy, szukajka się kłania, jak i też biblioteki, a dokładniej amxconst.inc (const - stałe, czyli właśnie te enumy tam się znajdują )
Proszę wycinek o PLUGIN_CONTINUE etc.
#define PLUGIN_CONTINUE 0 /* Results returned by public functions */
#define PLUGIN_HANDLED 1 /* stop other plugins */
#define PLUGIN_HANDLED_MAIN 2 /* to use in client_command(), continue all plugins but stop the command */
(return 0 == return PLUGIN_CONTINUE - poczytaj o enum )
Jeżeli nie rozumiesz komentarzy użyj wyszukiwarki, a znajdziesz z pewnością temat, w którym zostało tam pięknie opisane.