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

Otrzymujący obrażenia nie dostaje XP.


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

#1 Droso

    Dawniej HubertTM

  • Support Team

Reputacja: 1 291
Godlike

  • Postów:2 371
  • Steam:steam
  • Imię:Hubert
  • Lokalizacja:Wrocław
Offline

Napisano 04.03.2012 13:13

Witam mam problem otóż mam moda i chciałem zrobić taki myk, że jak gracz włączy sobie pancerz i ktoś go uderzy z bron to zmniejsza mu obrażenia (dzieli obrażenia) im większy lvl pancerza tym bardziej zmniejsza dmg.
Otóż nie działa anie zmniejszanie dmg a ni nie daje doswiadczenia
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_alive(this) || !is_user_connected(this) || !is_user_connected(idattacker) || get_user_team(this) == get_user_team(idattacker) || !klasa_gracza[idattacker])
  return HAM_IGNORED;

new health = get_user_health(this);
new weapon = get_user_weapon(idattacker);

/*Level 0*/
if(energia[this] > 100 && pancerz[this] == true && poziom_gracza[this] == 0)
{
  damage /= 1.5
  energia[this] -= 120
  doswiadczenie_gracz[this] += 10
}
/*Level 1*/
if(energia[this] > 100 && pancerz[this] == true && poziom_gracza[this] == 1)
{
  damage /= 1.55
  energia[this] -= 115
  doswiadczenie_gracz[this] += 10
}
/*Level 2*/
if(energia[this] > 100 && pancerz[this] == true && poziom_gracza[this] == 2)
{
  damage /= 1.6
  energia[this] -= 110
  doswiadczenie_gracz[this] += 10
}
/*Level 3*/
if(energia[this] > 100 && pancerz[this] == true && poziom_gracza[this] == 3)
{
  damage /= 1.65
  energia[this] -= 105
  doswiadczenie_gracz[this] += 10
}

/*Level 4*/
if(energia[this] > 100 && pancerz[this] == true && poziom_gracza[this] == 4)
{
  damage /= 1.7
  energia[this] -= 100
  doswiadczenie_gracz[this] += 10
}

/*Level 5*/
if(energia[this] > 100 && pancerz[this] == true && poziom_gracza[this] == 5)
{
  damage /= 1.75
  energia[this] -= 95
  doswiadczenie_gracz[this] += 10
}

/*Level 6*/
if(energia[this] > 100 && pancerz[this] == true && poziom_gracza[this] == 6)
{
  damage /= 1.8
  energia[this] -= 90
  doswiadczenie_gracz[this] += 10
}

/*Level 7*/
if(energia[this] > 100 && pancerz[this] == true && poziom_gracza[this] == 7)
{
  damage /= 1.85
  energia[this] -= 90
  doswiadczenie_gracz[this] += 10
}

/*Level 8*/
if(energia[this] > 100 && pancerz[this] == true && poziom_gracza[this] == 8)
{
  damage /= 1.9
  energia[this] -= 90
  doswiadczenie_gracz[this] += 10
}

/*Level 9*/

if(energia[this] > 100 && pancerz[this] == true && poziom_gracza[this] == 9)
{
  damage /= 1.9
  energia[this] -= 86
  doswiadczenie_gracz[this] += 11
}


/*Level 10*/
if(energia[this] > 100 && pancerz[this] == true && poziom_gracza[this] == 10)
{
  damage /= 1.95
  energia[this] -= 85
  doswiadczenie_gracz[this] += 10
}

/*Level 11*/
if(energia[this] > 100 && pancerz[this] == true && poziom_gracza[this] == 11)
{
  damage /= 1.9
  energia[this] -= 80
  doswiadczenie_gracz[this] += 10
}

/*Level 12*/
if(energia[this] > 100 && pancerz[this] == true && poziom_gracza[this] == 12)
{
  damage /= 2.0
  energia[this] -= 80
  doswiadczenie_gracz[this] += 10
}

if(weapon == CSW_KNIFE && KNIFE == 1){


   damage += 35

}

if(health < 2)
  return HAM_IGNORED;



SetHamParamFloat(4, damage);

return HAM_IGNORED;

}
P.s testuje na PodBotach
  • +
  • -
  • 0

Piszę pluginy pod: AMX MOD X oraz SOURCE MOD!

Na zlecenie i bez zlecenia zresztą też!


#2 Zapalka

    Wszechwidzący

  • Użytkownik

Reputacja: 194
Profesjonalista

  • Postów:283
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Janów Lubelski
Offline

Napisano 04.03.2012 15:33

Zapoznaj się lepiej z parametrami funkcji TakeDamage :)
idattacker to id gracza atakującego, nie (tak jak ty podałeś) this.
  • +
  • -
  • 0
Zapraszam na http://zapalka.net.pl

#3 Droso

    Dawniej HubertTM

  • Autor tematu
  • Support Team

Reputacja: 1 291
Godlike

  • Postów:2 371
  • Steam:steam
  • Imię:Hubert
  • Lokalizacja:Wrocław
Offline

Napisano 04.03.2012 19:35

Widzę twoje umiejętności są genialne

, że jak gracz włączy sobie pancerz i ktoś go uderzy z broni to zmniejsza mu obrażenia
I ? To chyba this
Nieważne chyba sobie poradziłem
  • +
  • -
  • 0

Piszę pluginy pod: AMX MOD X oraz SOURCE MOD!

Na zlecenie i bez zlecenia zresztą też!


#4 Nakupenda.

    Not yet YODA

  • Użytkownik

Reputacja: 137
Zaawansowany

  • Postów:451
  • Imię:Paweł
  • Lokalizacja:Warszawa
Offline

Napisano 04.03.2012 20:42

od razu do optymalizacji: zamień to na switcha albo conajmniej na else if'y
  • +
  • -
  • 0




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

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