Skocz do zawartości

  • Zaloguj korzystając z Facebooka Zaloguj korzystając z Twittera Zaloguj przez Steam Zaloguj poprzez Google      Logowanie »   
  • Rejestracja

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] Problem z Meekstone


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

#1 Karmi1

    Pomocny

  • Użytkownik

Reputacja: 0
zer0.

  • Postów:61
  • Lokalizacja:Gdańsk
Offline

Napisano 11.04.2012 08:17

Witam. Otóż ostatnio postanowiłem w Diablo Modzie dodać klasie premium moc dzięki której jest odporna na archy oraz meekstone. Z archami nie było problemu, jednak przy meekstone wystąpiły komplikacje. Gdy klasa premium stała w promieniu wybuchu "bomby" to posiadacz itemku mógł go używać x razy gdyż paka nie znikała. Jednak gdy klasa premium wyszła z tego promienia item działał normalnie. W końcu udało mi się naprawić ten błąd jakoś w publicu c4fake. Wszystko działa dobrze, lecz teraz jest inny problem. Po wybuchu meekstone'a pojawia się fałszywy model z którym nie możemy nic zrobić. Wygląda to tak:

http://www.youtube.c...eature=youtu.be

Co zrobić aby usunąć tą "fałszywkę"? Poniżej podaje kawałek .sma

public item_c4fake(id)
{
if(player_b_meekstone[id])
{
if (c4state[id] > 1)
{
hudmsg(id,2.0,"Meekstone mozesz uzyc raz na runde!")
return PLUGIN_CONTINUE
}

if (player_b_meekstone[id] > 0 && c4state[id] == 1 && is_user_alive(id) == 1 && freeze_ended == true)
{
explode(c4bombc[id],id,0)

for(new a = 0; a < MAX; a++)
{
if (is_user_connected(a) && is_user_alive(a) && !c_antymeek[a])
{
new origin1[3]
get_user_origin(a,origin1)

if(get_distance(c4bombc[id],origin1) < 300 && get_user_team(a) != get_user_team(id))
{
if(player_b_antymeek[a] > 0 || c_antymeek[a] > 0)
return PLUGIN_HANDLED;
UTIL_Kill(id,a,"grenade")
}
}
}

c4state[id] = 2
remove_entity(c4fake[id])
c4fake[id] = 0
}
}

if ((player_b_meekstone[id] > 0) && c4state[id]%2 == 0 && c4fake[id] == 0 && is_user_alive(id) == 1 && freeze_ended == true)
{
new Float:pOrigin[3]
entity_get_vector(id,EV_VEC_origin, pOrigin)
c4fake[id] = create_entity("info_target")

entity_set_model(c4fake[id],"models/w_backpack.mdl")
entity_set_origin(c4fake[id],pOrigin)
entity_set_string(c4fake[id],EV_SZ_classname,"fakec4")
entity_set_edict(c4fake[id],EV_ENT_owner,id)
entity_set_int(c4fake[id],EV_INT_movetype,6)


new Float:aOrigin[3]
entity_get_vector(c4fake[id],EV_VEC_origin, aOrigin)
c4bombc[id][0] = floatround(aOrigin[0])
c4bombc[id][1] = floatround(aOrigin[1])
c4bombc[id][2] = floatround(aOrigin[2])
c4state[id]++
}

return PLUGIN_CONTINUE
}



Proszę o szybką pomoc. Pozdrawiam:
Karmi
  • +
  • -
  • 0

#2 creepMP3

    Banned

  • Zbanowany

Reputacja: 51
Pomocny

  • Postów:190
  • Lokalizacja:Polska
Offline

Napisano 11.04.2012 12:23

public item_c4fake(id)
{
if(player_b_meekstone[id])
{
if (c4state[id] > 1)
{
hudmsg(id,2.0,"Meekstone mozesz uzyc raz na runde!")
return PLUGIN_CONTINUE
}
if(is_valid_ent(c4fake[id]))
{
if (player_b_meekstone[id] > 0 && c4state[id] == 1 && is_user_alive(id) == 1 && freeze_ended == true)
{
explode(c4bombc[id],id,0)

for(new a = 0; a < MAX; a++)
{
if (is_user_connected(a) && is_user_alive(a) && !c_antymeek[a])
{
new origin1[3]
get_user_origin(a,origin1)

if(get_distance(c4bombc[id],origin1) < 300 && get_user_team(a) != get_user_team(id))
{
if(player_b_antymeek[a] > 0 || c_antymeek[a] > 0)
return PLUGIN_HANDLED;
UTIL_Kill(id,a,"grenade")
}
}
}
c4state[id] = 2
remove_entity(c4fake[id])
c4fake[id] = 0
}
}
}


Sprawdź teraz bo ja nie miałem jak bez całego kodu .SMA

Dodałem if(is_valid_ent(c4fake[id])) nad if (player_b_meekstone[id] > 0 && c4state[id] == 1 && is_user_alive(id) == 1 && freeze_ended == true)

gdzie po użyciu model ma się skasować remove_entity(c4fake[id])
Perk Google - [||||||||||||||||||||] 100% - http://amxx.pl/topic...13-perk-google/

#3 Karmi1

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 0
zer0.

  • Postów:61
  • Lokalizacja:Gdańsk
Offline

Napisano 11.04.2012 12:42

Nadal nic. W razie potrzeby mogę podesłać .sma na PW.
  • +
  • -
  • 0

#4 creepMP3

    Banned

  • Zbanowany

Reputacja: 51
Pomocny

  • Postów:190
  • Lokalizacja:Polska
Offline

Napisano 11.04.2012 12:50

podeślij + IP twojego serwera bo nie będę u siebie specjalnie wgrywał całego moda Diablo :)
Perk Google - [||||||||||||||||||||] 100% - http://amxx.pl/topic...13-perk-google/

#5 sebul

    Godlike

  • Junior Admin

Reputacja: 2016
Godlike

  • Postów:5411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 11.04.2012 13:39

Masz źle blokowane dmg od meeka, a dokładniej jeśli chce się ominąć tylko jedną pętlę, to nie daje się "return" tylko "continue", return wyjdzie z całej funkcji.
for(new a = 0; a < MAX; a++)
{
if (is_user_connected(a) && is_user_alive(a) && !c_antymeek[a])
{
new origin1[3]
get_user_origin(a,origin1)

if(get_distance(c4bombc[id],origin1) < 300 && get_user_team(a) != get_user_team(id))
{
if(player_b_antymeek[a] > 0 || c_antymeek[a] > 0)
continue;

UTIL_Kill(id,a,"grenade")
}
}
}

  • +
  • -
  • 1
Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo
Generator tabeli expa - aż do 103600 poziomu

#6 Karmi1

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 0
zer0.

  • Postów:61
  • Lokalizacja:Gdańsk
Offline

Napisano 11.04.2012 13:53

Nadal jest ten bug : /
  • +
  • -
  • 0

#7 sebul

    Godlike

  • Junior Admin

Reputacja: 2016
Godlike

  • Postów:5411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 11.04.2012 14:00

c4state[id]%2 == 0

A co to? Wywal "%2" z tego i będzie dobrze, radziłbym też nie robić czegoś skoro nie wie się jak coś działa.
  • +
  • -
  • 1
Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo
Generator tabeli expa - aż do 103600 poziomu

#8 Karmi1

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 0
zer0.

  • Postów:61
  • Lokalizacja:Gdańsk
Offline

Napisano 11.04.2012 15:17

Działa : D
Do zamknięcia.
  • +
  • -
  • 0

#9 sebul

    Godlike

  • Junior Admin

Reputacja: 2016
Godlike

  • Postów:5411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 11.04.2012 19:50

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0
Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo
Generator tabeli expa - aż do 103600 poziomu




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

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