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

Świecąca flara


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

#1 Peter

    Zaawansowany

  • Użytkownik

Reputacja: 52
Pomocny

  • Postów:141
  • Lokalizacja:MMZ
Offline

Napisano 21.06.2008 15:39

Witam czy był by ktoś tak miły i przerobił mi ten plugin, tak aby flara była jako smoke a nie jak latarką sie świeci :P
Tak wygląda plugin w działaniu http://pl.youtube.co...h?v=zWexYWDMi8s


#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <engine>

#define TE_SPARKS 9
#define TE_ELIGHT 28

/* Rodzaj lotu flary
MOVETYPE_STEP // domyslne, leci troche a pozniej upada
MOVETYPE_BOUNCEMISSILE // odbijajace sie - fajny efekt, niczymmocno kopieta pilka
MOVETYPE_FLY // lata, nie odbija sie (pozniej spada oczywiscie)
MOVETYPE_TOSS // stawia flare w tym miejscu gdzie jest gracz,na ziemii
MOVETYPE_PUSH // stawia flare w miejscu gdzie stoi gracz, lecz wisi ona w powietrzu
MOVETYPE_NOCLIP // noclip, 0 grawitacji
MOVETYPE_FLYMISSILE // leci, w momencie dotniecia z ziemia od razu staje w miejscu
MOVETYPE_BOUNCE // lecaca przy zmiemii,odbijajaca sie
MOVETYPE_PUSHSTEP // leci przy ziemii, leciutko sie odbija       
*/

#define MOVETYPE MOVETYPE_STEP
       
new FlareAmmo[33]

public plugin_init()
{
    register_plugin("Flare Flashlight","1.7","Sn!ff3r")   
   
    register_cvar("flare_duration","10.0")    
    register_cvar("flare_num","1")
    register_cvar("flare_r","0.0")
    register_cvar("flare_g","0.0")
    register_cvar("flare_b","0.0")
    register_cvar("flare_slap","0")
    register_cvar("flare_slap_power","1")
    register_cvar("flare_gravity","0.5")
    // pobrano z cs-puchatek.pl
    register_event("ResetHUD","PlayerInit","b")
}

public client_impulse(id,impulse)
{
    if(impulse == 100) InitFlare(id)
   
    return PLUGIN_HANDLED
}

public plugin_precache()
{
    precache_sound("weapons/rocketfire1.wav")
    precache_model("models/w_flare.mdl")
}

public client_disconnect(id)
    FlareAmmo[id] = 0

public pfn_touch(ptr,ptd)
{
    new classn[32]
    entity_get_string(ptr,EV_SZ_classname,classn,31)
   
    if(equal(classn,"Flare"))
    {
        new Float:FlareOrigin[3]
        entity_get_vector(ptr,EV_VEC_origin,FlareOrigin)
       
        message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
        write_byte(TE_SPARKS)
        write_coord(floatround(FlareOrigin[0]))
        write_coord(floatround(FlareOrigin[1]))
        write_coord(floatround(FlareOrigin[2]))
        message_end()
       
        new Float:colour[3]
       
        colour[0] = get_cvar_float("flare_r")
        colour[1] = get_cvar_float("flare_g")
        colour[2] = get_cvar_float("flare_b")
       
        message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
        write_byte(TE_ELIGHT)
        write_short(ptr)
        write_coord(floatround(FlareOrigin[0]))
        write_coord(floatround(FlareOrigin[1]))
        write_coord(floatround(FlareOrigin[2]))
        write_coord(500)
        write_byte(floatround(colour[0]))
        write_byte(floatround(colour[1]))
        write_byte(floatround(colour[2]))
        write_byte(get_cvar_num("flare_duration")*10)
        write_coord(0)
        message_end()
       
        entity_set_int(ptr,EV_INT_rendermode,kRenderNormal)
        entity_set_int(ptr,EV_INT_renderfx,kRenderFxGlowShell)
        entity_set_float(ptr,EV_FL_renderamt,10.0)       
       
        entity_set_vector(ptr,EV_VEC_rendercolor,colour)
    }
}


public PlayerInit(id)
{
    FlareAmmo[id] = get_cvar_num("flare_num")   
    return PLUGIN_CONTINUE
}

public InitFlare(id)
{
    if(FlareAmmo[id] != 0)
    {   
        new Float:PlayerOrigin[3]
        entity_get_vector(id,EV_VEC_origin,PlayerOrigin);
        // pobrano z cs-puchatek.pl
        new flare = create_entity("info_target")
        entity_set_string(flare,EV_SZ_classname,"Flare")
        entity_set_model(flare,"models/w_flare.mdl")
        entity_set_origin(flare,PlayerOrigin)
       
        entity_set_int(flare,EV_INT_solid,2)
        entity_set_edict(flare,EV_ENT_owner,id)       
   
        entity_set_int(flare,EV_INT_movetype,MOVETYPE)
       
        entity_set_float(flare,EV_FL_gravity,get_cvar_float("flare_gravity"))
       
        entity_set_int(flare,EV_INT_effects,EF_BRIGHTLIGHT)
       
        new Float:PlayerVelocity[3]
        VelocityByAim(id,1000,PlayerVelocity)
       
        entity_set_vector(flare,EV_VEC_velocity,PlayerVelocity)
       
        FlareAmmo[id]--
        emit_sound(id,CHAN_BODY,"weapons/rocketfire1.wav",1.0,ATTN_NORM,0,PITCH_NORM)
       
        set_task(get_cvar_float("flare_duration"),"RemoveFlare",flare)
    }
   
    else if(FlareAmmo[id] == 0)
    {
        if(get_cvar_num("flare_slap"))
            user_slap(id,get_cvar_num("flare_slap_power"))
       
        client_print(id,print_chat,"[AMX] Wykorzystales limit flar (%d)! Czekaj do nowej rundy.",get_cvar_num("flare_num"))
        // pobrano z cs-puchatek.pl
    }   
    return PLUGIN_HANDLED
}

public RemoveFlare(flare)
{
    remove_entity(flare)
    return PLUGIN_CONTINUE
}

  • +
  • -
  • 0

#2 Miczu

    Godlike

  • Przyjaciel

Reputacja: 646
Wszechmogący

  • Postów:2862
Offline

Napisano 21.06.2008 15:51

Wiecej szczegolow ;>

Model zmieniz z latarki na granat, czy moze zamiast wystrzal przez wlaczenie latarki na granat :P
  • +
  • -
  • 0

#3 Peter

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 52
Pomocny

  • Postów:141
  • Lokalizacja:MMZ
Offline

Napisano 21.06.2008 16:47

Wiecej szczegolow ;>

Model zmieniz z latarki na granat, czy moze zamiast wystrzal przez wlaczenie latarki na granat :P



Teraz gdy sie włącza latarkę to jest wyrzucana flara. Ja chcę aby latarka została normalnie latarką, a jak się wyrzuci granat smoke to żeby była flara a nie smoke : P zrozumiale napisałem x D

Tak wygląda flara :P http://wgrajfoto.pl/...asasasa1637.png
  • +
  • -
  • 0

#4 Salamon

    Profesjonalista

  • Użytkownik

Reputacja: 43
Pomocny

  • Postów:199
Offline

Napisano 21.06.2008 17:29

proszę

#include <amxmodx>
#include <fakemeta>

new const FLARE_MODEL[] = "models/w_flare.mdl";
//new const FLARE_SOUNDS[][] = { "ambience/burning1.wav", "ambience/burning3.wav" };

new pcvar_flare_duration;

public plugin_init()
{
	register_plugin("Smoke Flares", "0.1", "Mini_Midget")
	
	pcvar_flare_duration = register_cvar("flare_duration", "20.0")
	
	register_forward(FM_SetModel, "fw_setmodel")	
	register_forward(FM_Think, "fw_think");
}

public plugin_precache() 
{
	engfunc(EngFunc_PrecacheModel, FLARE_MODEL);
	//for (new i = 0 ; i < sizeof FLARE_SOUNDS ; i++)
	//	engfunc(EngFunc_PrecacheSound, FLARE_SOUNDS[i]);
}

public fw_setmodel(ent, model[]) 
{
		//Not a valid ent     or      Thrower not alive
	if (!pev_valid(ent) || !is_user_alive(pev(ent, pev_owner))) // not a valid ent
		return FMRES_IGNORED;
	
	new Float: duration = get_pcvar_float(pcvar_flare_duration)
		
	if (equali(model,"models/w_smokegrenade.mdl"))
	{
		new className[33]
		pev(ent, pev_classname, className, 32)
		
		// Stop smoke grenade from exploding
		set_pev(ent, pev_nextthink, get_gametime() + duration);
		//Effects
		set_pev(ent,pev_effects,EF_BRIGHTLIGHT); 
		fm_set_rendering(ent, kRenderFxGlowShell, 150, 150, 250, kRenderNormal, 16)
		//Sound
		//engfunc(EngFunc_EmitSound, ent, CHAN_AUTO, FLARE_SOUNDS[random(sizeof FLARE_SOUNDS)], VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		
		if(equal(className, "weaponbox") || equal(className, "armoury_entity") || equal(className, "grenade"))
	    {
			engfunc(EngFunc_SetModel, ent, FLARE_MODEL);
			return FMRES_SUPERCEDE
		}
	}
		
	return FMRES_IGNORED;
}

public fw_think(ent) 
{
		//Not a valid ent     or      Thrower not alive
	if (!pev_valid(ent) || !is_user_alive(pev(ent, pev_owner))) // not a valid ent
		return FMRES_IGNORED;
		
	static classname[33]
	pev(ent, pev_classname, classname, sizeof classname - 1);
	static model[33]
	pev(ent, pev_model, model, sizeof model - 1);
	
	if( equal(model, FLARE_MODEL) && equal(classname, "grenade"))
		engfunc(EngFunc_RemoveEntity, ent);
		
	return FMRES_IGNORED;
}

stock fm_set_rendering(entity, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 16) {
	new Float:RenderColor[3];
	RenderColor[2] = float(<img src='http://amxx.pl/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='B)' />;
	RenderColor[0] = float(r);
	RenderColor[1] = float(g);

	set_pev(entity, pev_renderfx, fx);
	set_pev(entity, pev_rendercolor, RenderColor);
	set_pev(entity, pev_rendermode, render);
	set_pev(entity, pev_renderamt, float(amount));

	return 1;
}

  • +
  • -
  • 0

#5 Peter

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 52
Pomocny

  • Postów:141
  • Lokalizacja:MMZ
Offline

Napisano 21.06.2008 17:54

Działa ale znikła po ~20s ;P


pcvar_flare_duration = register_cvar("flare_duration", "20.0")


To jest za ten czas ? jak dać żeby było cały czas :>
  • +
  • -
  • 0

#6 Miczu

    Godlike

  • Przyjaciel

Reputacja: 646
Wszechmogący

  • Postów:2862
Offline

Napisano 21.06.2008 18:10

register_cvar("flare_duration", "3600.0")
- bedzie dzialac 1h wiec starczy :F
  • +
  • -
  • 0

#7 kajtek2008

    Nowy

  • Zbanowany

Reputacja: 0
zer0.

  • Postów:7
Offline

Napisano 28.09.2008 18:07

mi flara nie gasnie i chcialbym zeby byla niebieska :help:

#8 baku

    [M]anchester[U]nited

  • Przyjaciel

Reputacja: 452
Wszechobecny

  • Postów:1054
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Polska
Offline

Napisano 28.09.2008 18:08

stock fm_set_rendering(entity, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal,

Ta linijka chyba odpowiada za zmianę kolorów ;> Więc chyba nie ma problemu zmienić ;P
  • +
  • -
  • 0

#9 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1725
Godlike

  • Postów:6881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 28.09.2008 18:35

baku, nie ta linijka co Ty podałeś lecz ta:
fm_set_rendering(ent, kRenderFxGlowShell, 150, 150, 250, kRenderNormal, 16)

  • +
  • -
  • 0

#10 michal1719

    Nowy

  • Użytkownik

Reputacja: 0
zer0.

  • Postów:4
Offline

Napisano 30.09.2008 20:20

Witajcie.
Czy mógłby mi ktoś wysłać plik w_flare.mdl ?? mam xtcs a w nim nie ma takiego pliku.
z góry dzięki
  • +
  • -
  • 0

#11 baku

    [M]anchester[U]nited

  • Przyjaciel

Reputacja: 452
Wszechobecny

  • Postów:1054
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Polska
Offline

Napisano 30.09.2008 20:31

Bo takiego pliku nie ma w ogóle .. Szukałem ale nie ma ..
  • +
  • -
  • 0

#12 michal1719

    Nowy

  • Użytkownik

Reputacja: 0
zer0.

  • Postów:4
Offline

Napisano 30.09.2008 20:54

Jak korzystam z tego pluginu to dookoła świeci się światło a samej flary nie ma.
Znalazłem parę plików o tej nazwie, ale nie działały (były od HL) :help:
  • +
  • -
  • 0

#13 Miczu

    Godlike

  • Przyjaciel

Reputacja: 646
Wszechmogący

  • Postów:2862
Offline

Napisano 01.10.2008 11:41

modele od hl sa jak najbardziej ok - cstrike jest modem hl1, jest na tym samym silniku graficznym...
  • +
  • -
  • 0

#14 michal1719

    Nowy

  • Użytkownik

Reputacja: 0
zer0.

  • Postów:4
Offline

Napisano 01.10.2008 14:53

teraz zauważyłem że czasami się pojawia model flary ( wkleiłem plik z HL ),
ale nie zawsze.
  • +
  • -
  • 0




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

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