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

Co to jest return i return return Plugin_Handled; I HandledSourceMod

problem sourcemod handle retuirn pomoc server plugin co to jest handle co to jest return niewiem co dodac jeszcze

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
1 odpowiedź w tym temacie

#1 please

    Nowy

  • Nowy

Reputacja: 0
Nowy

  • Postów:1
  • Imię:Mikołaj
  • Lokalizacja:Konin
Offline

Napisano 13.04.2017 09:26

Witam wszystkich problem dotyczy sourcemod wiem że nie powinnienem tu pisać tematu ale nie ma innego porządnego forum na temat sourcemod oprócz słabego mygo.pl :) Dopiero ucze się pisania sourcemod więc proszę o wyrozumiałość  Moje pytanie brzmi jak powyżej w tytule proszę o wytłumaczenie szczegółowe dla kowalskiego patrzałem na internecie ale jest po angielsku albo polacy nic nie wiedzią albo jest napisanie na wiki jakimś językiem nie zrozumiałym dla mnie.I najlepiej podać jakiś przykład z wytłumaczeniem z góry dziękuje.


  • +
  • -
  • 0

#2 d0naciak

    Godlike

  • Power User

Reputacja: 1 029
Hero

  • Postów:2 414
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Kotlarka
Offline

Napisano 13.04.2017 16:15

return zawsze kończy funkcję, i jak mówi dosłowne tłumaczenie ono zwraca - zwracać też może jakąś wartość którą można wykorzystać, przykład:

  PrintToChatAll("%d", ktora_wieksza(3, 4)); //wypisze 4
   PrintToChatAll("%d", ktora_wieksza(7, 4)); //wypisze 7
   PrintToChatAll("%d", ktora_wieksza(0, 0)); //wypisze 0
   PrintToChatAll("%d", ktora_wieksza(-30, 30)); //wypisze 30
}
 
public ktora_wieksza(a, b) {
      if(a > b) return a;
   return b;
}

Zwracając return Plugin_Handled; możesz zatrzymać działanie funkcji, jeżeli jest ona pre (posiada prefix Action:). Przykład na obrażeniach gracza:

 
public OnClientPutInServer(cId) {
SDKHook(cId, SDKHook_OnTakeDamage, event_Obrazenia); //rejestruje event
}
 
public OnClientDisconnect(cId) {
SDKUnhook(cId, SDKHook_OnTakeDamage, event_Obrazenia); //odrejestrowywuje event
}
 
public Action:event_Obrazenia(cVic, &cKil, &iEnt, &Float:fObrazenia, &iDmgType, &iWeapon, Float:fDmgForce[3], Float:fDmgPos[3], iDmgCustom)
{
if(iWeapon == -1 || !(1 <= cKil <= MaxClients) || !IsClientInGame(cKil) || !IsPlayerAlive(cKil)) //jezeli nie atakuje z broni, atakujacy nie jest graczem, nie jest w grze, nie jest zywy
return Plugin_Continue;  //pomin reszte funkcji i kontunuuj...
 
new String:szWeapon[32];
GetEntPropString(iWeapon, Prop_Data, "m_iClassname", szWeapon, 31); //pobierz nazwe broni
 
if(StrEqual(szWeapon, "weapon_knife") && (GetClientButtons(cKil) & IN_ATTACK1)) { //jezeli atakuje nozem i uzywa LPM
return Plugin_Handled; //zatrzymaj obrazenia
}
 
return Plugin_Continue; //kontunuuj...
}

  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: problem, sourcemod, handle, retuirn, pomoc, server, plugin, co to jest handle, co to jest return, niewiem co dodac jeszcze

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

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