Tarcza dla klasy

Status
Zamknięty.
K

kmils21

Gość
Problem z klasą. Poczytałem w internecie i zorientowałem się że klasa z tarczą powinna wyglądać tak:

Kod:
#include <amxmodx>
#include <codmod>
#include <fun>

new const nazwa[] = "TEST";
new const opis[] = "TEST";
new const bronie = 1<<CSW_bron;
new const zdrowie = 0;
new const kondycja = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;

public plugin_init() {
	register_plugin(nazwa, "1.0", "QTM_Peyote");
	
	cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}
public cod_class_enabled(id)
{
	cod_set_user_shield(id, 1)
}
public cod_class_disabled(id)
{
	cod_set_user_shield(id, 0)
}

Mam jednak problem tarcza działa ale tylko po 1 zrespienu a że używam autorespawna (advanced_respawn.amxx) to po kolejnych juz nie.
Czyli działa na początku każdej rundy, proszę o pomoc
 
Dodaj #include <hamsandwich>

w public plugin_init()

RegisterHam(Ham_Spawn, "player", "DajTarcze", 1);

dodaj boolową
new bool:ma_klase[33];

w publicach cod_class wiesz jak.

i

public DajTarcze(id)
{
if(!is_user_connected(id) || !is_user_alive(id))
return PLUGIN_CONTINUE

if(ma_klase[id])
{
cod_set_user_shield(id, 1)
}
return PLUGIN_CONTINUE
}
 
Niestety nie działa, wiedziałem ze boola ale nie znam dobrze togo języka.


Dalej jest tylko jedna na rundę
 
Skoro funkcja nie pomogła to co pomoże:

Kod:
#include <amxmodx>
#include <codmod>
#include <fun>
#include <hamsandwich>

new bool:ma_klase[33];

new const nazwa[] = "TEST";
new const opis[] = "TEST";
new const bronie = 1<<CSW_DEAGLE;
new const zdrowie = 0;
new const kondycja = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;

public plugin_init() {
	register_plugin(nazwa, "1.0", "autor");
	RegisterHam(Ham_Spawn, "player", "DajTarcze", 1);

	cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}
public cod_class_enabled(id)
{
	cod_set_user_shield(id, 1)
}
public cod_class_disabled(id)
{
	cod_set_user_shield(id, 0)
}


public DajTarcze(id)
{
	if(!is_user_connected(id) || !is_user_alive(id))
	return PLUGIN_CONTINUE

	if(ma_klase[id])
	{
		cod_set_user_shield(id, 1)
	}
	return PLUGIN_CONTINUE
}


///Nie doubluj postów !
Następnym razem warn
Chriss-
 
Powinno działac:

Kod:
#include <amxmodx>
#include <codmod>
#include <fun>
#include <hamsandwich>

new bool:ma_klase[33];

new const nazwa[] = "TEST";
new const opis[] = "TEST";
new const bronie = 1<<CSW_DEAGLE;
new const zdrowie = 0;
new const kondycja = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;

public plugin_init() {
   register_plugin(nazwa, "1.0", "autor");
   RegisterHam(Ham_Spawn, "player", "DajTarcze", 1);

   cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}
public cod_class_enabled(id)
{
   cod_set_user_shield(id, 1)
   ma_klase[id] = true;
}
public cod_class_disabled(id)
{
   cod_set_user_shield(id, 0)
   ma_klase[id] = false;
}


public DajTarcze(id)
{
   if(!is_user_connected(id) || !is_user_alive(id))
   return PLUGIN_CONTINUE

   if(ma_klase[id])
   {
      cod_set_user_shield(id, 1)
   }
   return PLUGIN_CONTINUE
}
 
Przepraszam za powtórkę.


Podałem błędną informacje, ale uzasadnioną. Do klasy dopisałem broń MP4navy a ta broń nie może być używana wraz z tarczą i nie działa wtedy, tak samo nie działa gdy się ma perk awpsniper.

Czyli nie działa gdy się ma primmary weapon. A gdy się go wyrzuci powraca do normy.

Sprawdzę to cypisa

EDIT
Jest tak samo
 
z tarcza to trudna sprawa jest bym musiał zrobić że jak dostanie broni np. m4a1 to ja usuwa najlepiej użyć stocka z nowego coda
 
Wiadomość wygenerowana przez Kid Mod,a.

Ten temat został zamknięty przez: oMISIUo
Powód zamknięcia: Raczej problem został rozwiązany. //Close


Z pozdrowieniami,
Administracja Działu AMXX.
 
Status
Zamknięty.
Back
Do góry