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

[ROZWIĄZANE] Jak dodać do pluginu wymaganie flagi


Najlepsza odpowiedź Puchate, 31.08.2014 22:32

Kod który podesłałeś jest z deczka beznadziejny... niestety. Sprawdź to, nietestowane ale powinno śmigać.

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fun>

#define PLUGIN "Player Knife MDL"
#define VERSION "1.0" 
#define AUTHOR "[H]ARDBO[T]"

#define FLAG ADMIN_RESERVATION

new const model_view[] = "models/gracz/v_knife.mdl";
new const model_player[] = "models/gracz/p_knife.mdl";
new const model_world[] = "models/w_knife.mdl";

new bool:hasAuth[33]

public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR);
	
	register_forward(FM_SetModel,"fw_SetModel");
	register_event("CurWeapon","event_MDL","be","1=1")
}

public client_authorized(id) {
	hasAuth[id] = (get_user_flags(id) & FLAG) ? true  : false;
}

public event_MDL(id)
{
	if(!hasAuth[id])
		return
	
	if(read_data(2) == CSW_KNIFE) 
	{
		set_pev(id, pev_viewmodel2,model_view);
		set_pev(id, pev_weaponmodel2,model_world)
	}
	
}
public fw_SetModel(ent, const model[])
{
	if(!pev_valid(ent))
		return FMRES_IGNORED	
	
	new owner = pev(ent, pev_owner)
	if(!is_user_connected(owner) || !hasAuth[owner])
		return FMRES_IGNORED
	
	if(equali(model, model_world)) {
		engfunc(EngFunc_SetModel, ent, model_view);
		return FMRES_SUPERCEDE		
	}
	return FMRES_IGNORED;
}
public plugin_precache()
{
	engfunc(EngFunc_PrecacheModel,model_view)
	engfunc(EngFunc_PrecacheModel,model_player)
	engfunc(EngFunc_PrecacheModel,model_world)	
}        
Przejdź do postu


  • Zamknięty Temat jest zamknięty
1 odpowiedź w tym temacie

#1 konkretzagatka

    Początkujący

  • Użytkownik

Reputacja: -3
Mniej niż zer0.

  • Postów:18
  • Lokalizacja:warszawa
Offline

Napisano 31.08.2014 22:16

Czy wie ktoś i mógłby pomoc dodać do poniższego kodu by Model zmieniał się tylko dla osoby o odpowiedniej fladze?

Tak jak by Vip miałby nóż...

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fun>

#define PLUGIN "Player Knife MDL"
#define VERSION "1.0" 
#define AUTHOR "[H]ARDBO[T]"

new const model_view[] = "models/gracz/v_knife.mdl";
new const model_player[] = "models/gracz/p_knife.mdl";
new const model_world[] = "models/w_knife.mdl";

public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR);
	
	register_forward(FM_SetModel,"fw_SetModel");
	register_event("CurWeapon","event_MDL","be","1=1")
}
public event_MDL(id)
{
	if(read_data(2) == CSW_KNIFE) 
	{
		set_pev(id, pev_viewmodel2,model_view);
		set_pev(id, pev_weaponmodel2,model_world)
	}
	else return FMRES_IGNORED;

	return FMRES_IGNORED;
}
public fw_SetModel(ent,const model[])
{
	for(new i=1; i<=get_maxplayers(); i++)
	{
		if(is_user_alive(i))
		{
			if(!pev_valid(ent)) return FMRES_IGNORED;
			
			if(equali(model,model_world))
			{
				engfunc(EngFunc_SetModel,ent,model_view);
				return FMRES_SUPERCEDE;
			}
			return FMRES_IGNORED;
		}
	}
	return FMRES_IGNORED;
}
public plugin_precache()
{
	engfunc(EngFunc_PrecacheModel,model_view)
	engfunc(EngFunc_PrecacheModel,model_player)
	engfunc(EngFunc_PrecacheModel,model_world)	
}        

Z góry dziękuję za pomoc


  • +
  • -
  • 0

#2 Puchate

    Wszechobecny

  • Użytkownik

Reputacja: 198
Profesjonalista

  • Postów:432
  • Lokalizacja:Polska
Offline

Napisano 31.08.2014 22:32   Najlepsza odpowiedź

Kod który podesłałeś jest z deczka beznadziejny... niestety. Sprawdź to, nietestowane ale powinno śmigać.

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fun>

#define PLUGIN "Player Knife MDL"
#define VERSION "1.0" 
#define AUTHOR "[H]ARDBO[T]"

#define FLAG ADMIN_RESERVATION

new const model_view[] = "models/gracz/v_knife.mdl";
new const model_player[] = "models/gracz/p_knife.mdl";
new const model_world[] = "models/w_knife.mdl";

new bool:hasAuth[33]

public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR);
	
	register_forward(FM_SetModel,"fw_SetModel");
	register_event("CurWeapon","event_MDL","be","1=1")
}

public client_authorized(id) {
	hasAuth[id] = (get_user_flags(id) & FLAG) ? true  : false;
}

public event_MDL(id)
{
	if(!hasAuth[id])
		return
	
	if(read_data(2) == CSW_KNIFE) 
	{
		set_pev(id, pev_viewmodel2,model_view);
		set_pev(id, pev_weaponmodel2,model_world)
	}
	
}
public fw_SetModel(ent, const model[])
{
	if(!pev_valid(ent))
		return FMRES_IGNORED	
	
	new owner = pev(ent, pev_owner)
	if(!is_user_connected(owner) || !hasAuth[owner])
		return FMRES_IGNORED
	
	if(equali(model, model_world)) {
		engfunc(EngFunc_SetModel, ent, model_view);
		return FMRES_SUPERCEDE		
	}
	return FMRES_IGNORED;
}
public plugin_precache()
{
	engfunc(EngFunc_PrecacheModel,model_view)
	engfunc(EngFunc_PrecacheModel,model_player)
	engfunc(EngFunc_PrecacheModel,model_world)	
}        

Użytkownik Puchate edytował ten post 31.08.2014 22:33

  • +
  • -
  • 1




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

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