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

Problem z kill_event


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

#1 Kewin. (ZeZ)

    Wszechobecny

  • Użytkownik

Reputacja: 130
Zaawansowany

  • Postów:465
  • GG:
  • Steam:steam
  • Imię:Kewin
  • Lokalizacja:Zgorzelec
Offline

Napisano 04.05.2013 15:10

Ostatnio wgralem na serwer plugin
http://amxx.pl/topic...ajace-z-graczy/
i mam z nim problem, ponieważ wywala mi taki błąd:
L 05/04/2013 - 10:40:35: [AMXX] Run time error 10: native error (native "pev")
L 05/04/2013 - 10:40:35: [AMXX]    [0] diablo_premium.sma::fwd_touch (line 5812)
 
linijka to:
 
 
pev(ent,pev_classname,classname,31);
 
 
z tego kodu:
 
 
public fwd_touch(ent,id)
{      
if(!is_user_alive(id)) return FMRES_IGNORED;

static classname[32];
pev(ent,pev_classname,classname,31);

if(!equali(classname,"paczka")) return FMRES_IGNORED; // jesli nie dotykamy przedmiotu to nie idziemy dalej

if(pev(id,pev_button))
{
  {
   UzyjPaczki(id)
   engfunc(EngFunc_RemoveEntity,ent);
  }
}
return FMRES_IGNORED;
}
Od czego ten problem wychodzi?
I jeszcze mam pytanie, dodajac calego eventa, do glownego pluginu DiabloMod by darkgl.
To na serwerze, gdy sie strzela, crashuje serwer :/ Jest to chyba blad w funkcji DEATHMSG
 
Dam tu caly DeathMsg, ale event to tylko na samym dole jest, i pytanie moje, to czy caly death jest dobrze skonstruwany?
 
Spoiler


Może zamienić, to:


static classname[32];
pev(ent,pev_classname,classname,31);

na:?

new classname[32];
pev(ent,pev_classname,classname,31);

  • +
  • -
  • 0

"Wiem, że nic nie wiem!"

...Nie jestem OWIECZKĄ!...

 

Pomagam przy DIABLOMODCORE i CODMOD

 

Pisz konkretnie, inaczej nie odpisze!


#2 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 983
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 16.05.2013 22:51

Dodaj sprawdzanie ent za pomocą pev_valid przed wykonywaniem jakiś czynności na encie

 

Może zamienić, to:

 

 

 

Nie ma to znaczenia więc możesz ale nic tym nie osiągniesz

 


To na serwerze, gdy sie strzela, crashuje serwer  :/ Jest to chyba blad w funkcji DEATHMSG

 

 

 

dlaczego strzelasz że jest to błąd w moim pluginie ;) ? a może jest to błąd w tym pluginie od eventów , lub pluginy w jakiś sposób ze sobą kolidują


  • +
  • -
  • 0

#3 Kewin. (ZeZ)

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 130
Zaawansowany

  • Postów:465
  • GG:
  • Steam:steam
  • Imię:Kewin
  • Lokalizacja:Zgorzelec
Offline

Napisano 17.05.2013 22:13


dlaczego strzelasz że jest to błąd w moim pluginie ? a może jest to błąd w tym pluginie od eventów , lub pluginy w jakiś sposób ze sobą kolidują

Jak pisalem, gdy przerzuciłem calego eventa z osobnego pluginu do głownego silnika diablo(Twojego) to wtedy tak sie dzialo.

Jest to na pewno zle zrobiony public Deathmsg.(kod publicu jest w pierwszym poscie) Nastepnym razem, gdy będę testowal to po prostu zrobie nowy register do death'a :)

 

A wrzucalem calego eventa do silnika, poniewaz nie umiem dodac w osobnym pluginie losowania itemu, wiec wymyslilem taki bajer ;)

 


Dodaj sprawdzanie ent za pomocą pev_valid przed wykonywaniem jakiś czynności na encie

Czyli jak w tym kodzie jest problem, to powinno tak wygladac?

Bym to od razu sprawdzil i sie nie pytal, ale teraz nie moge nic testowac :/

public fwd_touch(ent,id)
{      
if(!is_user_alive(id)) return FMRES_IGNORED;

if(!pev_valid(ent))
{
static classname[32];
pev(ent,pev_classname,classname,31);

if(!equali(classname,"paczka")) return FMRES_IGNORED; // jesli nie dotykamy przedmiotu to nie idziemy dalej

if(pev(id,pev_button))
{
  {
   UzyjPaczki(id)
   engfunc(EngFunc_RemoveEntity,ent);
  }
}
return FMRES_IGNORED;
}
}

  • +
  • -
  • 0

"Wiem, że nic nie wiem!"

...Nie jestem OWIECZKĄ!...

 

Pomagam przy DIABLOMODCORE i CODMOD

 

Pisz konkretnie, inaczej nie odpisze!





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

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