AMX Mod X - vše co potřebuješ k serveru
Prostor pro Vaši reklamu - napište nám

Pokročilé hledání





Všechny časy jsou v UTC


 [ Příspěvků: 50 ]  Přejít na stránku 1, 2, 3, 4, 5  Další
Autor Zpráva
 Předmět příspěvku: Zmena modelu zbraní
PříspěvekNapsal: stř 08. čer 2011 19:14:26 
Offline
AMXX Podpora
Uživatelský avatar

Registrován: ned 27. úno 2011 12:53:16
Příspěvky: 447
Poděkoval: 0 x
Obdržel poděkování: 72 x
Tak zmena modelu
1.v_modelu
Kód:
#include <amxmodx>
#include <engine>

#define PLUGIN "weapon models"
#define VERSION "1.0"
#define AUTHOR "author"

new Model[] = "models/new/v_ak47.mdl"

public plugin_precache()
{
    precache_model(Model)
}

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_event("CurWeapon", "weapon", "be","1=1") // event CurWeapon slúži na udávanie funkcií na zbraň momentálne nosenú
}

public weapon(id)
{
    new wepid = read_data(2)
    
    if
(wepid != CSW_AK47) // ak sa id zbrane nerovná Ak47, tak sa nestane nič, ale ak sa rovná...
        return PLUGIN_CONTINUE
        
//tak sa nastaví model na Entitu
        // odporúčam meniť modely pomocou enginu alebo fakemety
    entity_set_string(id,EV_SZ_viewmodel,Model)//nastaví na id viewmodel zo súboru ktorý je zadefinovaný v Model
    return PLUGIN_CONTINUE
}
 


2. zmena p_modelu

Kód:
#include <amxmodx>
#include <engine>

#define PLUGIN "weapon models"
#define VERSION "1.0"
#define AUTHOR "author"

new Model2[] = "models/new/p_knife.mdl"

public plugin_precache()
{
    precache_model(Model2)
}

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_event("CurWeapon", "weapon", "be","1=1") // event CurWeapon slúži na udávanie funkcií na zbraň momentálne nosenú
}

public weapon(id)
{
    new wepid = read_data(2)
    
    if
(wepid != CSW_KNIFE) // ak sa id zbrane nerovná Ak47, tak sa nestane nič, ale ak sa rovná...
        return PLUGIN_CONTINUE
        
//tak sa nastaví model na Entitu
    entity_set_string(id,EV_SZ_weaponmodel,Model2)//nastaví na id weaponmodelu(p_model) zo súboru ktorý je zadefinovaný v Model
    return PLUGIN_CONTINUE
}

 


3. w_modelu
Kód:
#include <amxmodx>
#include <engine>
#include <fakemeta>

#define PLUGIN "weapon models"
#define VERSION "1.0"
#define AUTHOR "author"

new Model3[] = "models/w_minigun.mdl"
new starymodel[] = "models/w_m249.mdl"

public plugin_precache()
{
    precache_model(Model3)
}

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_forward(FM_SetModel, "newmodel")// príkaz na nastavenie modelu
}

public newmodel(entity, model[])// zadefinujeme statickú "entity" a nejaký model ktorý bude zadefinovaný
{
    // pozoruje či entita je platná inak ak nie tak dostaneme nejaké errory
    if(!is_valid_ent(entity)) 
        return FMRES_IGNORED

    
// pozoruje že ktorý model chceme zmeniť
    if(!equali(model, starymodel)) // teda starý world model
        return FMRES_IGNORED

    new className
[33]// premenná
    entity_get_string(entity, EV_SZ_classname, className, 32)// udáva Classname entity

    //            odhodene zbrane                     mapové zbrane                      c4 + granáty
    if(equal(className, "weaponbox") || equal(className, "armoury_entity") || equal(className, "grenade"))
    {
        // nastavuje world model( ten kt. vidíte na zemi )
        entity_set_model(entity, Model3)
        return FMRES_SUPERCEDE
    
}
    return FMRES_IGNORED
}
 

Ak nájdete chybu tak napište kde je.


edit: Bafak - slíbený fakemeta způsob:
Kód:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

#define PLUGIN "Zmena modelu zbrani pomoci fakemety"
#define VERSION "1.0"
#define AUTHOR "Bafak"

new const p_Model[] = "models/p_m134.mdl"  
new const v_Model
[] = "models/v_m134.mdl"  
//modely kterými budeme nahrazovat současné, modely nezapomentě precachovat aby si mohli zahrát i ostatní, ale to zde již uvádět nebudu, to už snad všichní znají

// tento způsob se hodí pokud chcete dát tyto modely pouze VIP hráčům, je vcelku jednoduchý, ale přiznám se že nevím jak se nahrazuje
// w_model.

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_event("CurWeapon" , "cur_weapon" , "be" , "1=1")//registruje event, který se spustí při změně zbraně
    //meňtě pouze 2. parametr ("cur_weapon") je no název funkce která se vyvolá
}
public cur_weapon(id)
{
    if(read_data(2) == CSW_M249)//jednoduše zjistí hráčovu zbraň používají se CSW_* názvy zbraní
    {
        if(get_user_flags(id) & ADMIN_LEVEL_D)//jak už jsem psal dá se použít pokud chcete nahradit modely zbraní pouze pro VIP hráče,
        //ale nikdo vám nezakazuje to použít i jinak - jak to už záleží na vás a vaší představivosti a kreativitě
        {
            set_pev(id, pev_viewmodel2, v_Model)
            //fakemeta funkce která nám mění model - v tomto případě na v_model který už mám předtím zavedený jako "models/v_m134.mdl"
            set_pev(id, pev_weaponmodel2, p_Model)
            //dělá to samé akorát pro p_model
        }
    }
    return PLUGIN_CONTINUE
} 


Nahoru
  
 
 Předmět příspěvku: Re: Zmena modelu zbraní
PříspěvekNapsal: stř 08. čer 2011 19:26:08 
Offline
AMXX Podpora
Uživatelský avatar

Registrován: pon 14. úno 2011 14:32:10
Příspěvky: 449
Poděkoval: 5 x
Obdržel poděkování: 36 x
Já ji našel he heč :)
ale tak koukám že si budu muset najít čas a udělat taky nějaké ty návody a mezi nimi i optimalizaci pluginu(nic proti tobě možná je to schválně kvůli začátečníkům že je ještě nechceš plantat definováním proměnných jako new nebo static)

+ pro vás ostatní dá se to udělat i jinak za pomocí fakemety to tu možná ještě přidám. jinak GJ

_________________
Pawn Scripting i na zakázky - info PM*

Nevíte si rady? Stačí se zeptat!


Blíží se změna...


Nahoru
  
 
 Předmět příspěvku: Re: Zmena modelu zbraní
PříspěvekNapsal: čtv 09. čer 2011 5:02:05 
Offline
Moderátor
Uživatelský avatar

Registrován: pát 27. kvě 2011 19:49:10
Příspěvky: 211
Poděkoval: 2 x
Obdržel poděkování: 1 x
a ked to hodim na server tak ty skiny budou myt vsichni hraci alebo len VIP?


Nahoru
  
 
 Předmět příspěvku: Re: Zmena modelu zbraní
PříspěvekNapsal: čtv 09. čer 2011 5:12:49 
Offline
Administrátor
Uživatelský avatar

Registrován: sob 06. led 2007 18:21:12
Příspěvky: 797
Poděkoval: 1 x
Obdržel poděkování: 76 x
EdDkA píše:
a ked to hodim na server tak ty skiny budou myt vsichni hraci alebo len VIP?


vsichni, staci se podivat do kodu kde nevidis tam zadnou podminku if ktera by se tykala hracu

_________________
Obrázek


Nahoru
  
 
 Předmět příspěvku: Re: Zmena modelu zbraní
PříspěvekNapsal: čtv 09. čer 2011 8:14:14 
Offline
Moderátor
Uživatelský avatar

Registrován: pát 27. kvě 2011 19:49:10
Příspěvky: 211
Poděkoval: 2 x
Obdržel poděkování: 1 x
ok, a kdybych to chtel udelat pro VIP tak tam mam dat
Kód:
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
??


Nahoru
  
 
 Předmět příspěvku: Re: Zmena modelu zbraní
PříspěvekNapsal: pát 10. čer 2011 16:08:30 
Offline
AMXX Podpora
Uživatelský avatar

Registrován: ned 27. úno 2011 12:53:16
Příspěvky: 447
Poděkoval: 0 x
Obdržel poděkování: 72 x
if(get_user_flags(id) & ADMIN_LEVEL_H){
}


Nahoru
  
 
 Předmět příspěvku: Re: Zmena modelu zbraní
PříspěvekNapsal: pát 10. čer 2011 17:40:07 
Offline
Moderátor
Uživatelský avatar

Registrován: pát 27. kvě 2011 19:49:10
Příspěvky: 211
Poděkoval: 2 x
Obdržel poděkování: 1 x
jo a mam to dat jen na zacatek toho pluginu nebo i na konec?? :)


Nahoru
  
 
 Předmět příspěvku: Re: Zmena modelu zbraní
PříspěvekNapsal: pát 10. čer 2011 19:49:04 
Offline
AMXX Podpora
Uživatelský avatar

Registrován: ned 27. úno 2011 12:53:16
Příspěvky: 447
Poděkoval: 0 x
Obdržel poděkování: 72 x
hneď ako je
public funkcia()
{
if(get_user_flags(id) & ADMIN_LEVEL_H)
{
//...


Nahoru
  
 
 Předmět příspěvku: Re: Zmena modelu zbraní
PříspěvekNapsal: pát 10. čer 2011 19:52:21 
Offline
Moderátor
Uživatelský avatar

Registrován: pát 27. kvě 2011 19:49:10
Příspěvky: 211
Poděkoval: 2 x
Obdržel poděkování: 1 x
ok dik. :)


Nahoru
  
 
 Předmět příspěvku: Re: Zmena modelu zbraní
PříspěvekNapsal: ned 12. čer 2011 18:00:07 
Offline
AMXX Junior Newbie
AMXX Junior Newbie
Uživatelský avatar

Registrován: stř 11. kvě 2011 15:08:01
Příspěvky: 120
Poděkoval: 0 x
Obdržel poděkování: 1 x
co je to p_weapon v_weapon w_weapon co su te predpony?


Nahoru
  
 
 [ Příspěvků: 50 ]  Přejít na stránku 1, 2, 3, 4, 5  Další

Všechny časy jsou v UTC


Kdo je online

Uživatelé procházející toto fórum: CommonCrawl [Bot] a 0 návštevníků



Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Přejít na:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
All rights reserved 2007 - 2019 © by AMXMODX.cz, kopírování textů nebo grafických prvků z této stránky je bez souhlasu administrátora (jab.jab@seznam.cz) přísně zakázáno!


TOPlist