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
Fix

[5.9l] Naprawa mocy pistoletowej maga

Fix

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

#1 sebul

    Godlike

  • Junior Admin

Reputacja: 2016
Godlike

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

Napisano 25.01.2011 21:45

*
Popularny

Na sam początek polecam wgranie tej poprawki -> [5.9l] Moce pistoletowe wybranych klas nie działają - AMXX.pl: Support AMX Mod X
Jak pewnie większość z Was wie, mag w swoim opisie ma coś takiego

Strzelajac z pistoletu zamrazasz wroga i zabierasz mu 5hp co 2 sek przez 15 sek.

ale tak naprawdę te zabieranie hp co 2 sek nie działa. Pokażę jak to naprawić.
Spoiler

Przy okazji po raz drugi podziękowania dla Pavulona i R3Xa ;] za wytłumaczenie co i jak z przenoszeniem w tasku więcej niż tylko id.

Użytkownik sebul edytował ten post 13.06.2011 00:22

  • +
  • -
  • 8
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

#2 JakubL

    Zaawansowany

  • Zbanowany

Reputacja: 11
Początkujący

  • Postów:147
  • Imię:Jakub
  • Lokalizacja:Poland?
Offline

Napisano 30.01.2011 09:56

No pięknie. +
A tak ogólnie to w zwykłym działa to zamrażanie u Maga? :P
Ja nie zauważyłem...

#3 sebul

    Godlike

  • Autor tematu
  • Junior Admin

Reputacja: 2016
Godlike

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

Napisano 30.01.2011 13:01

Z tego co wiem to po jednej poprawce (dotyczącej wszystkich mocy pistoletowych), która znajduje się tutaj na forum, zamrażanie 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

#4 KariiO

    Super Hero

  • Power User

Reputacja: 395
Wszechpomocny

  • Postów:1133
  • GG:
  • Imię:Korneliusz
  • Lokalizacja:Cieszyn
Offline

Napisano 01.02.2011 15:09

Tylko obrażenia i spowalnianie ? Niebieski render też by się przydał na czas działania tego cacka :D
  • +
  • -
  • 0

#5 FreZZy

    Guru

  • Zbanowany

Reputacja: 210
Profesjonalista

  • Postów:716
  • GG:
  • Imię:Paweł
  • Lokalizacja:Wwa
Offline

Napisano 01.02.2011 15:11

ta to prawda myślałem nad tym i w końcu to zrobiłem u sb ale nie chce mi sie tu wrzucać ;d

#6 sebul

    Godlike

  • Autor tematu
  • Junior Admin

Reputacja: 2016
Godlike

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

Napisano 01.02.2011 15:22

Tylko obrażenia i spowalnianie ? Niebieski render też by się przydał na czas działania tego cacka :D

Jeśli Ci chodzi o takie coś jak przy wskrzeszaniu, to zamiast
if(DemageTake[id] == 0) {
DemageTake[id] = 1;
set_speedchange(id);
new data[3];
data[0] = 5; // obrazenia, tutaj zmieniasz wartość obrażeń zadawanych co 2 sek.
data[1] = attacker;
data[2] = weapon;
set_task(11.0, "funcReleaseVic", id);
set_task(11.0, "funcReleaseVic2", id);
set_task(2.0, "funcDemageVic", id+GLUTON, data, 3, "b");
}

dodaj
if(DemageTake[id] == 0) {
DemageTake[id] = 1;
Display_Fade(id, seconds(2), seconds(10), 0, 0, 0, 255, 200);
set_speedchange(id);
new data[3];
data[0] = 5; // obrazenia, tutaj zmieniasz wartość obrażeń zadawanych co 2 sek.
data[1] = attacker;
data[2] = weapon;
set_task(11.0, "funcReleaseVic", id);
set_task(11.0, "funcReleaseVic2", id);
set_task(2.0, "funcDemageVic", id+GLUTON, data, 3, "b");
}

Użytkownik sebul edytował ten post 13.06.2011 00:31

  • +
  • -
  • 3
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

#7 FreZZy

    Guru

  • Zbanowany

Reputacja: 210
Profesjonalista

  • Postów:716
  • GG:
  • Imię:Paweł
  • Lokalizacja:Wwa
Offline

Napisano 01.02.2011 15:45

nie żeby gośc świecił (render) tak jak fireshield

a nie screenfade

#8 KariiO

    Super Hero

  • Power User

Reputacja: 395
Wszechpomocny

  • Postów:1133
  • GG:
  • Imię:Korneliusz
  • Lokalizacja:Cieszyn
Offline

Napisano 01.02.2011 16:16

Oślepiania mi nie trzeba :> Ale przyda się w dalekiej przyszłości :D
  • +
  • -
  • 0

#9 sebul

    Godlike

  • Autor tematu
  • Junior Admin

Reputacja: 2016
Godlike

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

Napisano 01.02.2011 19:02

ta to prawda myślałem nad tym i w końcu to zrobiłem u sb ale nie chce mi sie tu wrzucać ;d

To mogłeś wrzucić, przecież to nawet wysilać się nad tym nie trzeba.

nie żeby gośc świecił (render) tak jak fireshield

a nie screenfade

Wcześniej się już domyśliłem, ale jak już pisałem post, to pomyślałem, że i to się także komuś przyda. A co do renderingu
Spoiler

Jak o czymś nie zapomniałem to powinno śmigać.

Użytkownik sebul edytował ten post 13.06.2011 00:33

  • +
  • -
  • 4
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

#10 FreZZy

    Guru

  • Zbanowany

Reputacja: 210
Profesjonalista

  • Postów:716
  • GG:
  • Imię:Paweł
  • Lokalizacja:Wwa
Offline

Napisano 02.02.2011 16:16

o! nie dodalem resa w hudzie ;) danke, ale poza tym mam tak samo - nie chcialo mi sie szukac tego i wrzucac

#11 cesik

    Zaawansowany

  • Zbanowany

Reputacja: 0
zer0.

  • Postów:129
  • Imię:Dawid
  • Lokalizacja:KIELCE
Offline

Napisano 16.02.2011 18:21

Robie wszystko tak jak tutaj co do kroczku:
Jak pewnie większość z Was wie, mag w swoim opisie ma coś takiego

Cytat
Strzelajac z pistoletu zamrazasz wroga i zabierasz mu 5hp co 2 sek przez 15 sek.

ale tak naprawdę te zabieranie hp co 2 sek nie działa. Pokażę jak to naprawić.
Spoiler
Znajdź i usuń

new attacker1


znajdź
Spoiler

agi=(BASE_SPEED / 2)
set_speedchange(id)
if(DemageTake[id]==0)
{
        DemageTake[id]=1
        set_task(11.0, "funcReleaseVic", id)
        set_task(11.0, "funcReleaseVic2", id)
        set_task(2.0, "funcDemageVic", id+GLUTON)
}


zamień na
Spoiler

if(DemageTake[id] == 0) {
        DemageTake[id] = 1;
        new obrazenia = 5; // tutaj zmieniasz wartość obrażeń zadawanych co 2 sek.
        new data[3];
        data[0] = attacker_id;
        data[1] = weapon;
        data[2] = obrazenia;
        set_task(11.0, "funcReleaseVic", id);
        set_task(11.0, "funcReleaseVic2", id);
        set_task(2.0, "funcDemageVic", id+GLUTON, data, 3);
}
set_speedchange(id);


znajdź
Spoiler

public funcDemageVic(id,attacker) 
{
        id-=GLUTON
        if(get_user_health(id)>10)
        set_task(2.0, "funcDemageVic", id+GLUTON)
        DoDamage(id, attacker1, 5);
}


zamień na
Spoiler

public funcDemageVic(data[], id) {
        id -= GLUTON;
        new attacker = data[0];
        new weapon = data[1];
        new damage = data[2];

        if(get_user_health(id)>10)
                set_task(2.0, "funcDemageVic", id+GLUTON, data, 3);

        new weaponname[32];
        get_weaponname(weapon, weaponname, 31);
        replace(weaponname, 31, "weapon_", "");
        DoDamage(id, damage, attacker, weaponname);
}


znajdź
Spoiler

DoDamage(iTargetID, iShooterID, iDamage/*, iDamageCause, bIsWeaponID = false, iHeadShot = 0*/)
{
        if(is_user_connected(iTargetID)&&is_user_connected(iShooterID))
        if ( is_user_alive(iTargetID))
        {       
                new bool:bPlayerDied = false;
                new iHP = get_user_health(iTargetID);
        
                if ( ( iHP - iDamage ) <= 0 )
                        bPlayerDied = true;
                
                if (bPlayerDied)
                {
                        // engine.inc set_msg_block function
                        //set_msg_block(g_iGameMsgDeath, BLOCK_ONCE);
                        user_kill(iTargetID, 1);
                }
                else
                        change_health(iTargetID,-iDamage,0,"")
                
                new sShooterName[32];
                get_user_name(iShooterID, sShooterName, 31);
                
                if (bPlayerDied)
                {
                        if ( iShooterID != iTargetID )
                        {
                                if ( get_user_team(iShooterID) != get_user_team(iTargetID) )
                                        set_user_frags(iShooterID, get_user_frags(iShooterID) + 1);
                                else
                                        set_user_frags(iShooterID, get_user_frags(iShooterID) - 1);
                                
                                //LogKill(iShooterID, iTargetID, sWeaponOrMagicName);
                        }
                        
                        //AddXP(iShooterID, BM_XP_KILL, iTargetID); // bmxphandler.inc
                        award_item(iShooterID,0)
                        award_kill(iShooterID,iTargetID)
                        add_respawn_bonus(iTargetID)
                        add_bonus_explode(iTargetID)
                        add_barbarian_bonus(iShooterID)
                        if (player_class[iShooterID] == Barbarzynca)
                        refill_ammo(iShooterID)
                }
        }
}


zamień na
Spoiler

public DoDamage(id, iDamage, attacker, weapon[]) {
        if(is_user_connected(id) && is_user_alive(id) && is_user_connected(attacker) && freeze_ended) {
                change_health(id, -iDamage, attacker, weapon);

                if(get_user_health(id)-iDamage <= 0) {
                        add_respawn_bonus(id);
                        add_bonus_explode(id);
                        add_barbarian_bonus(attacker);
                        if(player_class[attacker] == Barbarzynca)
                                refill_ammo(attacker);
                        set_renderchange(attacker);
                }
        }
}


Przy tym ostatnim tylko nie wiem czy aby na pewno musi być ten "public", ale w każdym razie tak też będzie działać. Przy okazji po raz drugi podziękowania dla Pavulona i R3Xa ;] za wytłumaczenie co i jak z przenoszeniem w tasku więcej niż tylko id.








i wywala mi taki bład proszę o pomoc Dołączona grafikaof corse + poleci

#12 Abes Mapper

    Repulsion Gel

  • Przyjaciel

Reputacja: 1996
Godlike

  • Postów:7356
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Sulejówek
Offline

Napisano 16.02.2011 18:29

To nie błąd tylko informacja o złej tabulacji. Nie wpływa na działanie pluginu
  • +
  • -
  • 0

#13 cesik

    Zaawansowany

  • Zbanowany

Reputacja: 0
zer0.

  • Postów:129
  • Imię:Dawid
  • Lokalizacja:KIELCE
Offline

Napisano 16.02.2011 19:59

czyli ze o co chodzi z ta tabulacja?

#14 FreZZy

    Guru

  • Zbanowany

Reputacja: 210
Profesjonalista

  • Postów:716
  • GG:
  • Imię:Paweł
  • Lokalizacja:Wwa
Offline

Napisano 16.02.2011 20:10

to nie ma znaczenia - ze brzydko wyglada kod

#15 cesik

    Zaawansowany

  • Zbanowany

Reputacja: 0
zer0.

  • Postów:129
  • Imię:Dawid
  • Lokalizacja:KIELCE
Offline

Napisano 16.02.2011 20:26

Ale jak to ma wplynac na maga jak tam niema zadnej adnotacji do tej klasy zainstalowalem to ale nadal nie zabiera hp , o barbarzyncy cos tam pisze a o magu juz nie

#16 FreZZy

    Guru

  • Zbanowany

Reputacja: 210
Profesjonalista

  • Postów:716
  • GG:
  • Imię:Paweł
  • Lokalizacja:Wwa
Offline

Napisano 16.02.2011 20:40

Pierwszy post sebula w tym temacie to zrobienie łatki, dzięki której osoba postrzelona z pistoletu przez maga, ma zabierane życie co 2 sek.

Kolejny post, w połowie tematu, to render - tak jak ktoś ma fireshielda to świ3ci na żółto, tak samo ofiara Maga świeci na niebisko (postrzelona TYLKO przez pistolet)

coś jeszcze?

#17 cesik

    Zaawansowany

  • Zbanowany

Reputacja: 0
zer0.

  • Postów:129
  • Imię:Dawid
  • Lokalizacja:KIELCE
Offline

Napisano 16.02.2011 20:47

no tak bo mi wcale niezauwazylem spadku hp
gdzie to ustawic zebym mogl ustaic ile hp zabiera i przez jaki czas?

Moze to byc spowodowane zmiana nazwy klasy na czarodziejka?

Użytkownik cesik edytował ten post 16.02.2011 20:50


#18 FreZZy

    Guru

  • Zbanowany

Reputacja: 210
Profesjonalista

  • Postów:716
  • GG:
  • Imię:Paweł
  • Lokalizacja:Wwa
Offline

Napisano 16.02.2011 21:45

nie, po prostu musisz wkleić to co ja mam:

case Czarodziejka:
{
agi=(BASE_SPEED / 2)
set_speedchange(id)
if(DemageTake[id] == 0)
{
DemageTake[id] = 1;
new obrazenia = 5; // tutaj zmieniasz wartość obrażeń zadawanych co 2 sek.
new data[3];
data[0] = attacker_id;
data[1] = weapon;
data[2] = obrazenia;
AddFlag(id, Flag_Zamroz);
set_task(11.0, "funcReleaseVic", id);
set_task(11.0, "funcReleaseVic2", id);
set_task(2.0, "funcDemageVic", id+GLUTON, data, 3); // tam gdzie masz 2.0 to (chyba) ilość sec. ale pewnien nie jestem, nie patrzyłem głębiej
}
set_speedchange(id);
set_renderchange(id);
}


#19 sebul

    Godlike

  • Autor tematu
  • Junior Admin

Reputacja: 2016
Godlike

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

Napisano 16.02.2011 23:30

A po co to
agi=(BASE_SPEED / 2) // <--
set_speedchange(id) // <--
if(DemageTake[id] == 0)

wystarczy tak
case Mag:
{
if(DemageTake[id] == 0)
{
DemageTake[id] = 1;
new obrazenia = 5; // wartość obrażeń zadawanych co jakiś czas
new data[3];
data[0] = attacker_id;
data[1] = weapon;
data[2] = obrazenia;
AddFlag(id, Flag_Zamroz);
set_task(11.0, "funcReleaseVic", id); // 11.0 długość trwania mocy
set_task(11.0, "funcReleaseVic2", id); // 11.0 długość trwania mocy
set_task(2.0, "funcDemageVic", id+GLUTON, data, 3); // 2.0 czas co jaki zadawane są obrażenia
}
set_speedchange(id);
set_renderchange(id);
}

  • +
  • -
  • 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

#20 FreZZy

    Guru

  • Zbanowany

Reputacja: 210
Profesjonalista

  • Postów:716
  • GG:
  • Imię:Paweł
  • Lokalizacja:Wwa
Offline

Napisano 16.02.2011 23:49

tak już miałem :)





Również z jednym lub większą ilością słów kluczowych: Fix

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

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