←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

Lustrzany Pocisk pewien bug

Zablokowany

  • +
  • -
ptasiek - zdjęcie ptasiek 05.04.2011

Witam jak zablokować w lustrzanym pocisku że dana osoba naładuje 2 pociski i są max 2.Wykorzysta je i pójdzie zkampi i naładuje dalsze jak zablokować te dlasze aby tylko można było ładować 1 raz?
kod :
new lustrzany_pocisk[33] = 1

RegisterHam(Ham_TakeDamage, "player", "lustrzanypocisk")

lustrzany_pocisk[i]=0

lustrzany_pocisk[id] = 0


if (player_ultra_armor[id]>0)
	{
		add(itemEffect,199,"Masz szanse, ze pocisk odbije sie od twojego pancerza")
	}




case Izual:
		{
			lustrzany_pocisk[id]++
			if(lustrzany_pocisk[id]>2)
			{
				lustrzany_pocisk[id]=2
				show_hudmessage(id, "Maksymalna wartosc lustrzanego pancerza to 2",lustrzany_pocisk[id]) 
			}
			else show_hudmessage(id, "Lustrzany pancerz wytrzyma %i strzalow",lustrzany_pocisk[id]) 
		}


public lustrzanypocisk(this, idinflictor, idattacker, Float:damage, damagebits)
{
        if(damagebits&(1<<1) && lustrzany_pocisk[this] > 0)
        {
                SetHamParamEntity(1, idattacker);
                SetHamParamEntity(2,this );
                SetHamParamEntity(3,this );
                lustrzany_pocisk[this]--;
                return HAM_HANDLED;
        }
        return HAM_IGNORED;
}



Dałem wszystkie kody jak by ktoś chciał sobie zrobić;P
I nie wiem oco w tym chodzi.
Odpowiedz

FreZZy - zdjęcie FreZZy 05.04.2011

na górze:
new limit[33]


podmień case izuala:


case Izual:
{
if(limit[id]<1)
{
lustrzany_pocisk[id]++
if(lustrzany_pocisk[id]>2 )
{
lustrzany_pocisk[id]=2
limit[id]=1
show_hudmessage(id, "Maksymalna wartosc lustrzanego pancerza to 2")
}
else show_hudmessage(id, "Lustrzany pancerz wytrzyma %i strzalow",lustrzany_pocisk[id])
}
else show_hudmessage(id, "Możesz tylko raz zaladowac lustrzany pancerz!")
}


i w public Roundstart:

limit[i]=0

Użytkownik FreZZy edytował ten post 08.04.2011 16:51
Odpowiedz

  • +
  • -
ptasiek - zdjęcie ptasiek 06.04.2011

a jak chce zrobić 1/3 to tak?
public lustrzanypocisk(this, idinflictor, idattacker, Float:damage, damagebits)
{
        if(damagebits&(1<<3) && lustrzany_pocisk[this] > 0)
        {
                SetHamParamEntity(1, idattacker);
                SetHamParamEntity(2,this );
                SetHamParamEntity(3,this );
                lustrzany_pocisk[this]--;
                return HAM_HANDLED;
        }
        return HAM_IGNORED;
?

Dodano 06 kwiecień 2011 - 14:28:
Aha i twój kod nie działa nie idzie kompliowac.
Odpowiedz

FreZZy - zdjęcie FreZZy 06.04.2011

hahahah nie :)

public lustrzanypocisk(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(damagebits&(1<<1) && lustrzany_pocisk[this] > 0 && random_num(1,X) ==1)
{
SetHamParamEntity(1, idattacker);
SetHamParamEntity(2,this );
SetHamParamEntity(3,this );
lustrzany_pocisk[this]--;
return HAM_HANDLED;
}
return HAM_IGNORED;
}


X - masz 1/x szansy (jak wpiszesz 3 to będzie 1/3)
Odpowiedz

  • +
  • -
ptasiek - zdjęcie ptasiek 06.04.2011

Tylko jak kompliuje to błędy wywala.
Odpowiedz

FreZZy - zdjęcie FreZZy 06.04.2011

bo zamiast X dajesz swoja liczbe -.-
Odpowiedz

  • +
  • -
ptasiek - zdjęcie ptasiek 07.04.2011

Daje w ogóle nie kompliuje..

Dodano 07 kwiecień 2011 - 16:52:
Zaznaczone linijki kompliator wykrywa w nich błędy:

if(limit[id]<1)
{
lustrzany_pocisk[id]++
if(lustrzany_pocisk[id]>2 )
{
lustrzany_pocisk[id]=2
limit[id]=1
show_hudmessage(id, "Maksymalna wartosc lustrzanego pancerza to 2",lustrzany_pocisk[id])

}
else show_hudmessage(id, "Lustrzany pancerz wytrzyma %i strzalow",lustrzany_pocisk[id])
}
else show_hudmessage(id, "Możesz tylko raz zaladowac lustrzany pancerz!)
}

Odpowiedz

FreZZy - zdjęcie FreZZy 07.04.2011

zamień na:

show_hudmessage(id, "Maksymalna wartosc lustrzanego pancerza to 2")


else show_hudmessage(id, "Możesz tylko raz zaladowac lustrzany pancerz!")


i jak nadal są błędy to powiedz jakie
Odpowiedz

  • +
  • -
ptasiek - zdjęcie ptasiek 07.04.2011

przekompliowalo ale błędy dalej 2
bez tytułu.JPG
Odpowiedz

FreZZy - zdjęcie FreZZy 07.04.2011

to nie błędy tylko warningi, świadczą o złej tabulacji :)

przekompilowało się
Odpowiedz

  • +
  • -
ptasiek - zdjęcie ptasiek 08.04.2011

A chcę mieć bez tabulacji bo chciałbym na allegro sprzedać.
Odpowiedz

FreZZy - zdjęcie FreZZy 08.04.2011

nie bez tabulacji, tylko z dobrą tabulacją chyba

to wystarczy że wstawisz to co ja ci napisałem powyżej i nie powinno być kłopotó

ew. jak masz amxx studio to tam masz funkcje od tabulacjii odpowiedniej
Odpowiedz

  • +
  • -
ptasiek - zdjęcie ptasiek 08.04.2011

włąsnie to twój kod:)
Odpowiedz

GoldeN - zdjęcie GoldeN 08.04.2011

Jego wygląda tak:

                case Izual:
{
if(limit[id]<1)
{
lustrzany_pocisk[id]++
if(lustrzany_pocisk[id]>2 )
{
lustrzany_pocisk[id]=2
limit[id]=1
show_hudmessage(id, "Maksymalna wartosc lustrzanego pancerza to 2")
}
else show_hudmessage(id, "Lustrzany pancerz wytrzyma %i strzalow",lustrzany_pocisk[id])
}
else show_hudmessage(id, "Możesz tylko raz zaladowac lustrzany pancerz!")
}


-.-

Na allegro... Haha.
Odpowiedz
Zablokowany