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

Zła redukcja widoczności przy itemie.


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

#1 Sniper Elite

    Master

  • Power User

Reputacja: 176
Profesjonalista

  • Postów:981
  • GG:
  • Imię:Konrad
  • Lokalizacja:Skryptolandia
Offline

Napisano 06.05.2011 14:07

Witam. Mam problem. A mianowicie jeżeli gracz zdobędzie item, który robi mu np. 8 niewidzialności oraz ma w klase wbudowane niewidzialność np.150 to robi mu się premia niewidzilności klasy, a nie itemu, a chcę żeby to była niewidzialność itemu.

Bonus niewidzialności klasy wygląda tak:
			else if (player_class[id] == Imp)
			{
				new inv_bonus = 255 - player_b_inv[id]
				render = 150
				
				if(player_b_inv[id]>0)
				{
					while(inv_bonus>0)
					{
						inv_bonus-=20
						render--
					}
				}
				
				if(player_b_usingwind[id]==1)
				{
					render/=2
				}
				
				if(render<0) render=0
				
				if(HasFlag(id,Flag_Moneyshield)||HasFlag(id,Flag_Rot)||HasFlag(id,Flag_Teamshield_Target)) render*=2	
				
				set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, render)
			}

Dzięki za pomoc.
  • +
  • -
  • 0

Kontakt:

Steam: CSnajper

GG: 4394855

 

Na steam i GG pomagam wyłącznie odpłatnie.


#2 FreZZy

    Guru

  • Zbanowany

Reputacja: 210
Profesjonalista

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

Napisano 06.05.2011 16:09

else if (player_class[id] == Imp)
{
new inv_bonus = 255 - player_b_inv[id]
render = 150

if(player_item_id[id]==CASE)
{
render = 8
}
if(player_b_inv[id]>0)
{
while(inv_bonus>0)
{
inv_bonus-=20
render--
}
}

if(player_b_usingwind[id]==1)
{
render/=2
}

if(render<0) render=0

if(HasFlag(id,Flag_Moneyshield)||HasFlag(id,Flag_Rot)||HasFlag(id,Flag_Teamshield_Target)) render*=2

set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, render)
}

Użytkownik FreZZy edytował ten post 06.05.2011 16:11


#3 Sniper Elite

    Master

  • Autor tematu
  • Power User

Reputacja: 176
Profesjonalista

  • Postów:981
  • GG:
  • Imię:Konrad
  • Lokalizacja:Skryptolandia
Offline

Napisano 06.05.2011 16:25

A żeby się sumowało, jak np. ninja + Stalkers Ring = niewidoczny, ale nie tak bardzo jak oni.

Dodano 06 maj 2011 - 17:29:
A gdyby zrobił tak, żeby rozstrzygało spór widoczności na korzyść gracza, czyli na ten, który by sprawił, że mniej go widać np. tak:

else if (player_class[id] == Imp)
                        {
                                new inv_bonus = 255 - player_b_inv[id]
                                render = 150
                                
                                if(player_b_inv[id]<render)
                                { 
                                        render = player_b_inv[id]
                                }
                                if(player_b_inv[id]>0)
                                {
                                        while(inv_bonus>0)
                                        {
                                                inv_bonus-=20
                                                render--
                                        }
                                }
                                
                                if(player_b_usingwind[id]==1)
                                {
                                        render/=2
                                }
                                
                                if(render<0) render=0
                                
                                if(HasFlag(id,Flag_Moneyshield)||HasFlag(id,Flag_Rot)||HasFlag(id,Flag_Teamshield_Target)) render*=2    
                                
                                set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, render)
                        }

Zadziała mi to?
  • +
  • -
  • 0

Kontakt:

Steam: CSnajper

GG: 4394855

 

Na steam i GG pomagam wyłącznie odpłatnie.


#4 Dalinor

    Zaawansowany

  • Użytkownik

Reputacja: 28
Życzliwy

  • Postów:77
  • GG:
  • Lokalizacja:Rabka :)
Offline

Napisano 08.05.2011 10:01

new inv_bonus = 255 - player_b_inv[id]


A po co to ?


                                if(player_b_inv[id]>0)
{
while(inv_bonus>0)
{
inv_bonus-=20
render--
}
}


I to ?

if(render<0) render=0


Tu daj render 1, a nie 0 bo w ogóle nie będzie kogoś widać oraz daj to niżej:
pod:
if(HasFlag(id,Flag_Moneyshield)||HasFlag(id,Flag_Rot)||HasFlag(id,Flag_Teamshield_Target)) render*=2   



Powinno działać.
  • +
  • -
  • 1

#5 FreZZy

    Guru

  • Zbanowany

Reputacja: 210
Profesjonalista

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

Napisano 08.05.2011 16:09

new inv_bonus = 255 - player_b_inv[id]


A po co to ?


                                if(player_b_inv[id]>0)
                                {
                                        while(inv_bonus>0)
                                        {
                                                inv_bonus-=20
                                                render--
                                        }
                                }


hmm może do itemku na niewidzialność? -.-

#6 Dalinor

    Zaawansowany

  • Użytkownik

Reputacja: 28
Życzliwy

  • Postów:77
  • GG:
  • Lokalizacja:Rabka :)
Offline

Napisano 09.05.2011 05:50

if(player_b_inv[id]<render) { render = player_b_inv[id] }



To jest od itemku na niewidzialność, więc po co coś co odejmuje render, bodajże o 1 ?? Oo A inv_bonusa nigdzie indziej nie użył, więc co mu to da, że odejmie 20 ??
  • +
  • -
  • 1

#7 Sniper Elite

    Master

  • Autor tematu
  • Power User

Reputacja: 176
Profesjonalista

  • Postów:981
  • GG:
  • Imię:Konrad
  • Lokalizacja:Skryptolandia
Offline

Napisano 09.05.2011 14:14

Wyświetl postUżytkownik Sniper Elite dnia 19 lipiec 2010 - 09:05 napisał
if(player_b_inv[id]<render) { render = player_b_inv[id] }


Jak tak zrobie to w ogóle mi klasy nie widać, jest tak niewidoczna jak ninja ze stalkerem.
Ta pentla dobrze działa bo ninja ze stalkerem jest w ogóle niewidoczna, a na innych klasach nie idzie jestem zmuszony na razie zrobić tak
if(player_b_inv[id]<0)
{
remder=player_b_inv[id]
}
else render=xxx

Nie jest to rozwiązanie doskonałe gdyż jeżeli damy klasie widocznosc np. 100, a zdobedzie ona item, który redukuje widoczność do 150, to niestety ustawi jej widoczność itemku.


Dzięki za pomoc, może później przyjdzie coś mnie, wam do głowy.
  • +
  • -
  • 0

Kontakt:

Steam: CSnajper

GG: 4394855

 

Na steam i GG pomagam wyłącznie odpłatnie.


#8 Stachuu :D ??

    Wszechobecny

  • Użytkownik

Reputacja: 237
Wszechwidzący

  • Postów:476
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Karsznice
Offline

Napisano 09.05.2011 19:52

Paczta


new inv_bonus = 255 - player_b_inv[id]
				render = 150
				
				if(player_b_inv[id]>0)
				{
					while(inv_bonus>0)
					{
						inv_bonus-=20
						render--
					}
				}

render = 150 to jest widoczność gracza

dostaniemy item na niewidzialność np o wartości 105

new inv_bonus = 255 - 105 czyli 150

teraz wystarczy pobawić sie z tym
np
                                                inv_bonus-=20
						render-=5
teraz z tym itemem będziesz miał na swojej klasie 115 widocznosci

a przy stalkerze (player_b_inv = 8)

będzie wynosić okolo 70 wiec musisz zwiększyć
render-=5
lub obniżyć
inv_bonus-=20
aby bylo doklanie

ja sam proponuje dać ci sam sprawdz jak to wyglada
render-=9

  • +
  • -
  • 0




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

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