Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

[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 postu


  • Zamknięty Temat jest zamknięty
2 odpowiedzi w tym temacie

#1 Koniarek

    Wszechwidzący

  • Zbanowany

Reputacja: 28
Życzliwy

  • Postów:250
  • Imię:Filip
  • Lokalizacja:Daleko
Offline

Napisano 24.04.2013 17:20

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>"
 

 



#2 Fili:P

    Godlike

  • Power User

Reputacja: 754
Guru

  • Postów:1 679
  • Imię:Darek
  • Lokalizacja:Warszawa
Offline

Napisano 24.04.2013 17:40   Najlepsza odpowiedź

Ten error mówi że w jednym miejscu w kodzie używasz "return", a w innym "return wartość". Przyjmij jeden sposób na plugin.


  • +
  • -
  • 1

#3 K!113r

    Teraz to chyba Sławek kek

  • Power User

Reputacja: 387
Wszechpomocny

  • Postów:868
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Piotrków Tryb.
Offline

Napisano 24.04.2013 19:58

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 :D )

Jeżeli nie rozumiesz komentarzy użyj wyszukiwarki, a znajdziesz z pewnością temat, w którym zostało tam pięknie opisane.


  • +
  • -
  • 0

DarkGL to mój autorytet.

skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych