[cerere plugin]Un skin mai multe texturi

Categoria cu cereri de pluginuri si nu numai.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Forum rules
Accesează link-ul pentru a putea vedea regulile forumului

Daca doriti sa vi se modifice un plugin, va rugam postati aici .
User avatar
LondoN eXtream
Membru eXtream
Membru eXtream
Posts: 2755
Joined: 10 Oct 2014, 06:21
Detinator Steam: Da
SteamID: /id/london_extreamcs
Reputatie: Fost scripter eXtreamCS
Fost moderator ajutator
Membru Club eXtreamCS (6 luni)
Fond eXtream: 0
Location: Roman, Neamț
Has thanked: 3 times
Been thanked: 12 times

30 Apr 2019, 19:37

1TAP GOD wrote:
30 Apr 2019, 17:11
L E V I N wrote:
30 Apr 2019, 00:57
LondoN eXtream wrote:
30 Apr 2019, 00:35
Nu cred ca este posibil fara un precache. Tu practic setezi acel model 10 in 1 dar nu cred ca exista vreo functie prin care sa schimbi textura intre ele. Practic cu set _pev setezi modelul si calea acestuia. @Levin nu mai folosit CurWeapon, foloseste Ham_Item_Deploy, e mai buna metoda decat curweapon.

Ceva de genu..
| Afiseaza codul
#include amxmodx
#include fakemeta
#include hamsandwich

enum _:Data {
	ModelV[64],
	ModelP[64]
}

new const SkinModels[][Data] = {
	"v_ak47_fireserpent", "p_ak47_fireserpent",
	"v_ak47_emp", "p_ak47_emp"
};

public plugin_precache() {
	new FilePath[128];
	for(new i; i < sizeof(SkinModels); i++) {
		formatex(FilePath, charsmax(FilePath), "models/Weapons/%s.mdl", SkinModels[ModelV]);
		engfunc(EngFunc_PrecacheModel, FilePath);
		formatex(FilePath, charsmax(FilePath), "models/weapons/%s.mdl", SkinModels[ModelP]);
		engfunc(EngFunc_PrecacheModel, FilePath);
	}
}

public plugin_init()	RegisterHam(Ham_Item_Deploy, "weapon_ak47", "HamItemDeploy_Post", 1);
public HamItemDeploy_Post(Entity) {
	new Player = get_pdata_cbase(Entity, 41, 4);
	new Skin = random_num(1, sizeof(SkinModels));

	set_pev(Player, pev_viewmodel2, SkinModels[Skin][ModelV]);
	set_pev(Player, pev_weaponmodel2, SkinModels[Skin][ModelP]);

	return;
}


e posibil, am găsit și eu, da nu mai are rost să rezolv cererea
am folosit curweapon pentru că am lăsat inițial să poată adăuga și alte arme, nu doar ak47...oricum puteam face și un for pentru registrul în ham, dar am rămas la curweapon pentru că mi se pare mai rapid(-cpu)


de ce nu are rost,eu inca astept...

Nu are rost pentru ca nu e posibil sa selectezi texturile dintr-un singur model.
Veniti cu cereri mai plauzibile si care se pot realiza.
RoyalServer
User avatar
1TAP GOD
Membru, skill +1
Membru, skill +1
Posts: 152
Joined: 03 Sep 2018, 00:20
Detinator Steam: Da
SteamID: /id/assasinssmdfk
Fond eXtream: 0
Has thanked: 16 times
Been thanked: 16 times

30 Apr 2019, 22:36

Cum nu ? Csgo legacy are această funcție dar pentru skinurile p si w tot asa mai multe texturi intr un model
----------------Steam----------------
-----------------------------------------------------------
Image
And she be actin' funny, probably think a nigga need her
I thought I was faithful, she say I'm a cheater
They thought I was taken, I'm ready to mingle
User avatar
DevilBoy.eXe
Super moderator
Super moderator
Posts: 1678
Joined: 05 Jun 2016, 23:04
Detinator Steam: Da
Detinator server CS: GO.WARED.RO
SteamID: DevilBoy_eXe
Reputatie: Super Moderator
Fond eXtream: 0
Location: beyond the time
Discord: zeux.
Has thanked: 15 times
Been thanked: 71 times
Contact:

01 May 2019, 10:45

1TAP GOD wrote:
30 Apr 2019, 22:36
Cum nu ? Csgo legacy are această funcție dar pentru skinurile p si w tot asa mai multe texturi intr un model
Gresesti, csgo legacy foloseste modelele p ca si model w sau invers nu are nici o legatura cu texturile
User avatar
levin
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 3844
Joined: 24 Aug 2011, 12:24
Detinator Steam: Da
CS Status:
Detinator server CS: ☯∴
SteamID: riseofevo
Reputatie: Scripter eXtreamCS
Nume anterior: Adryyy
Location: ҳ̸Ҳ̸ҳ
Discord: devilclass
Has thanked: 36 times
Been thanked: 594 times
Contact:

01 May 2019, 12:23

DevilBoy.eXe wrote:
01 May 2019, 10:45
1TAP GOD wrote:
30 Apr 2019, 22:36
Cum nu ? Csgo legacy are această funcție dar pentru skinurile p si w tot asa mai multe texturi intr un model
Gresesti, csgo legacy foloseste modelele p ca si model w sau invers nu are nici o legatura cu texturile
p - player model (skinul care poate să fie văzut de restul când acel cineva are skin pe arma din mână)
w - world model (dacă arma e pe jos și are skin, skinul este vizibil pentru toți)

nu există ce zici tu =)) (doar dacă habar nu are ce face ăla)
Last edited by levin on 01 May 2019, 14:16, edited 1 time in total.
Pentru ajutor, faceți cerere bine detaliată, completând și respectând modelul corespunzător.
Nu-mi mai dați cereri doar pentru a mă avea în lista de prieteni.
Dacă te ajut, și mă ignori/etc > te adaug în „foe”.
Aveți grijă la cei ce încearcă să mă copieze sau să dea drept mine..Puteți lua legătura cu mine prin STEAM dacă aveți o problemă/nelămurire în acest caz! Cont de forum am doar aici.
În cazul în care utilizați ceva din ce am postat(ex: aici), e bine să fiți la curent cu modificările aduse și de aici, iar dacă sunt ceva probleme nu ezitați să luați legătura cu mine. Actualizarea unor coduri nu se vor afișa public, doar dacă se găsește ceva critic/urgent de remediat, unele fiind coduri vechi iar unele refăcute chiar recent dar private.
* Nume pe cs1.6: eVoLuTiOn \ Nume vechi: eVo
* Atelierul meu - post2819572.html#p2819572 (închis, click link ca să vedeți de ce)
User avatar
DevilBoy.eXe
Super moderator
Super moderator
Posts: 1678
Joined: 05 Jun 2016, 23:04
Detinator Steam: Da
Detinator server CS: GO.WARED.RO
SteamID: DevilBoy_eXe
Reputatie: Super Moderator
Fond eXtream: 0
Location: beyond the time
Discord: zeux.
Has thanked: 15 times
Been thanked: 71 times
Contact:

01 May 2019, 14:10

L E V I N wrote:
01 May 2019, 12:23
DevilBoy.eXe wrote:
01 May 2019, 10:45
1TAP GOD wrote:
30 Apr 2019, 22:36
Cum nu ? Csgo legacy are această funcție dar pentru skinurile p si w tot asa mai multe texturi intr un model
Gresesti, csgo legacy foloseste modelele p ca si model w sau invers nu are nici o legatura cu texturile
p - player model (skinul care poate să fie văzut de restul când acel cineva de are skin pe arma din mână)
w - world model (dacă arma e pe jos și are skin, skinul îi este vizibil pentru toți)

nu există ce zici tu =)) (doar dacă habar nu are ce face ăla)
Da are dreptate totusi 1TAP GOD p si w are texturi multiple in csgo legacy acum am verificat si eu
Oi fi inteles eu gresit cand mi-a explicat arkxes cum functioneaza sistemu :))
User avatar
1TAP GOD
Membru, skill +1
Membru, skill +1
Posts: 152
Joined: 03 Sep 2018, 00:20
Detinator Steam: Da
SteamID: /id/assasinssmdfk
Fond eXtream: 0
Has thanked: 16 times
Been thanked: 16 times

01 May 2019, 14:44

Sistemul functioneaza asa pluginul verifică ce skin ai selectat din menu dupa aceea iti setează pe ak una din texturile enumerate de funnky
----------------Steam----------------
-----------------------------------------------------------
Image
And she be actin' funny, probably think a nigga need her
I thought I was faithful, she say I'm a cheater
They thought I was taken, I'm ready to mingle
User avatar
LondoN eXtream
Membru eXtream
Membru eXtream
Posts: 2755
Joined: 10 Oct 2014, 06:21
Detinator Steam: Da
SteamID: /id/london_extreamcs
Reputatie: Fost scripter eXtreamCS
Fost moderator ajutator
Membru Club eXtreamCS (6 luni)
Fond eXtream: 0
Location: Roman, Neamț
Has thanked: 3 times
Been thanked: 12 times

01 May 2019, 15:48

Inseamna ca sistemul ruleaza cu o nativa speciala, altfel nu gasesc vreo metoda de a realiza asa ceva.
Am cautat si nu exista in nici-o librarie vreo nativa/metoda default din amx care sa seteze o anumita textura.
User avatar
levin
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 3844
Joined: 24 Aug 2011, 12:24
Detinator Steam: Da
CS Status:
Detinator server CS: ☯∴
SteamID: riseofevo
Reputatie: Scripter eXtreamCS
Nume anterior: Adryyy
Location: ҳ̸Ҳ̸ҳ
Discord: devilclass
Has thanked: 36 times
Been thanked: 594 times
Contact:

01 May 2019, 19:10

păi dacă e nativă, e tot bazată pe amxx, căci nu am văzut să folosească alt modul metamod sau amxx...oricum, poate e posibil, da dacă nu schimba parola de la serveru de teste, poate postam, da nu-mi plac fazele astea copilărești
Pentru ajutor, faceți cerere bine detaliată, completând și respectând modelul corespunzător.
Nu-mi mai dați cereri doar pentru a mă avea în lista de prieteni.
Dacă te ajut, și mă ignori/etc > te adaug în „foe”.
Aveți grijă la cei ce încearcă să mă copieze sau să dea drept mine..Puteți lua legătura cu mine prin STEAM dacă aveți o problemă/nelămurire în acest caz! Cont de forum am doar aici.
În cazul în care utilizați ceva din ce am postat(ex: aici), e bine să fiți la curent cu modificările aduse și de aici, iar dacă sunt ceva probleme nu ezitați să luați legătura cu mine. Actualizarea unor coduri nu se vor afișa public, doar dacă se găsește ceva critic/urgent de remediat, unele fiind coduri vechi iar unele refăcute chiar recent dar private.
* Nume pe cs1.6: eVoLuTiOn \ Nume vechi: eVo
* Atelierul meu - post2819572.html#p2819572 (închis, click link ca să vedeți de ce)
User avatar
1TAP GOD
Membru, skill +1
Membru, skill +1
Posts: 152
Joined: 03 Sep 2018, 00:20
Detinator Steam: Da
SteamID: /id/assasinssmdfk
Fond eXtream: 0
Has thanked: 16 times
Been thanked: 16 times

01 May 2019, 20:46

Nu am schimbat o s.a dus hostul:)))))il aveam de la un prieten ,încercați să decomiplat csgo_mainz.amxx sa vedeti funcția
----------------Steam----------------
-----------------------------------------------------------
Image
And she be actin' funny, probably think a nigga need her
I thought I was faithful, she say I'm a cheater
They thought I was taken, I'm ready to mingle
User avatar
faKe91
Fost moderator
Fost moderator
Posts: 1064
Joined: 07 Oct 2014, 18:49
Detinator Steam: Da
CS Status: I <3 Heavy Metal
SteamID: dogseatmypancreas
Reputatie: Fost moderator ajutator
Fost Membru Club eXtreamCS (doua luni)
Fond eXtream: 0
Location: Republica Moldova, Chișinău
Has thanked: 9 times
Been thanked: 12 times

01 May 2019, 20:57

vezi cum e realizat aici https://forums.alliedmods.net/showthread.php?p=359356, doar ca in acest caz e un singur skin cu mai multe submodele, iar la tine e invers
User avatar
Reycku
Membru, skill 0
Membru, skill 0
Posts: 68
Joined: 26 Jan 2019, 02:11
Detinator Steam: Da
Detinator server CS: RESPAWN.PUBCS.RO
SteamID: reyck
Fond eXtream: 0
Been thanked: 3 times
Contact:

01 May 2019, 21:26

Amxx Uncompress sau headline lysis si le imbinati unele string-uri cu sma-ul decompilat obtinut+ uite-te la linii in mainz sa vezi ca este ceva legat de mai multe modele
sau incercati sa vorbiti cu zorken sa ii cereti parerea si lui...parca facuse si el ceva de genu
User avatar
levin
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 3844
Joined: 24 Aug 2011, 12:24
Detinator Steam: Da
CS Status:
Detinator server CS: ☯∴
SteamID: riseofevo
Reputatie: Scripter eXtreamCS
Nume anterior: Adryyy
Location: ҳ̸Ҳ̸ҳ
Discord: devilclass
Has thanked: 36 times
Been thanked: 594 times
Contact:

01 May 2019, 21:43

asta e ce făcusem, da nu e testat

Code: Select all

/*
			set_pev(player_ent[id],pev_skin,0)//0 nr la model
			set_pev(player_ent[id],pev_body,0) // pe corp asta..la noob??
			set_pev(entity, pev_sequence,1)
pev(entindex, pev_body)

entity_set_int(entindex, EV_INT_body, num)
entity_get_int(entindex, EV_INT_body)
			set_animation(id,random_num(1,2))
			dllfunc( DLLFunc_ClientUserInfoChanged, id, engfunc( EngFunc_GetInfoKeyBuffer, id ) );

    iWep = give_item(id, "your_weapon")
    engfunc(EngFunc_SetModel, iWep, "P MODEL")
    set_pev(iWep, pev_body, your submodel number)
    fm_set_entity_visibility(iWep, 1)
    set_pev(id, pev_viewmodel2, "")  

SendWeaponAnim(id, iAnim)
{
    set_pev(id, pev_weaponanim, iAnim)

    message_begin(MSG_ONE_UNRELIABLE, SVC_WEAPONANIM, _, id)
    write_byte(iAnim)
    write_byte(pev(id,pev_body))
    message_end()
}
*/

#include <amxmodx>
#include <fun>
#include <fakemeta>
#include <engine>

#pragma tabsize 0

new ak47[33]=""

enum _:Data
{
	Nume_Model[35],
	v_Model[65],
	p_Model[65],
	w_Model[65],//csf..nu e necesar, da daca ai la model pune
	NrBMP//numerotarea e de la 1 pan la X(setat mai jos)
}

new const INFOS[][Data]=
{						   //aici e w_, da poti lasa asa - "" daca nu vrei sa pui, sau nu are
	"AK-47 MODAT", "v_ak47_mod", "p_ak47_mod", "", 10//10 .bmp incluse in skin..
}

public plugin_init()
{
	register_clcmd("say /ak47","AK")
	register_clcmd("say_team /ak47","AK")

	register_event("CurWeapon","Event_CurWeapon","be","1=1")
	register_forward(FM_SetModel, "fw_SetModel")
}

public plugin_precache()
{
	for(new i;i<sizeof(INFOS);i++)//charsmax
	{
		if(!equal(INFOS[i][v_Model],""))	precache_player_model(INFOS[i][v_Model])
		if(!equal(INFOS[i][p_Model],""))	precache_player_model(INFOS[i][p_Model])
		if(!equal(INFOS[i][w_Model],""))	precache_player_model(INFOS[i][w_Model])
	}
}
precache_player_model(szModel[])
{
	static szFile[128]
	formatex(szFile,charsmax(szFile),"models/ak47/%s.mdl",szModel)
	precache_model(szFile)

//defined
	//if(contain(charsmax(szFile)-5,"T")!=-1)
	replace(szFile, charsmax(szFile), ".mdl", "T.mdl")
    if(file_exists(szFile))	precache_model(szFile)
}

public Event_CurWeapon(id)
{
	if(!is_user_alive(id)||equal(ak47[id],""))	return
	if(!equal(INFOS[ak47[id]][v_Model],""))	set_pev(id,pev_viewmodel2,INFOS[ak47[id]][v_Model])
	if(!equal(INFOS[ak47[id]][p_Model],""))	set_pev(id,pev_weaponmodel2,INFOS[ak47[id]][p_Model])
	engclient_cmd(id,"weapon_ak47")
}

public fw_SetModel(entity, model[])
{
    if(!is_valid_ent(entity))
        return FMRES_IGNORED

    static iOwner
    iOwner = entity_get_edict(entity, EV_ENT_owner)
	
    if(!equal(model,INFOS[ak47[iOwner]][w_Model])&&!equal(INFOS[ak47[iOwner]][w_Model],""))
        return FMRES_IGNORED

    new className[33]
    entity_get_string(entity, EV_SZ_classname, className, 32)

    if(equal(className, "weaponbox") || equal(className, "armoury_entity") || equal(className, "grenade"))
    {
        entity_set_model(entity,INFOS[ak47[iOwner]][w_Model])
        return FMRES_SUPERCEDE
    }
    return FMRES_IGNORED
}

public client_putinserver(id)	ak47[id]=EOS
public client_disconnect(id)	ak47[id]=EOS

public AK(id)
{
	new menu=menu_create("Alege-ti un Skin pentru AK47","choosed_options")
	new callback=menu_makecallback("hook_shop")
	static text[125],i,tasta[2]

	for(i=0;i<sizeof INFOS;i++)
	{
		if(ak47[id]==i)	formatex(text,charsmax(text),"\d%s\w [\rSELECTAT\w]",INFOS[i][Nume_Model])
		else	formatex(text,charsmax(text),"\r%s",INFOS[i][Nume_Model])

		tasta[0]=i
		tasta[1]=0
		menu_additem(menu, text, tasta, _, callback)
	}

	menu_display(id,menu)
}
public hook_shop(id,menu,item)
{
	if(item==MENU_EXIT)
	{
		menu_destroy(menu)
		return PLUGIN_HANDLED
	}
 
	if(!is_user_alive(id)||ak47[id]==item)	return ITEM_DISABLED
   
	return ITEM_ENABLED
}

public shop_handler(id,menu,item)
{
	if(item==MENU_EXIT||!is_user_alive(id))
	{
		menu_destroy(menu)
		return PLUGIN_HANDLED
	}
	
	new rand	//numărătoarea e de la 1 cică
	rand=random_num(1,INFOS[item][NrBMP])
	
	if(ak47[id]==rand)
	{
		client_print(id,print_chat,"* Ai deja %s",INFOS[rand][Nume_Model])
		return PLUGIN_HANDLED
	}
   
	client_print(id,print_chat,"* Ai ales cu succes modelul %s cu skinul %d din %d",INFOS[rand][Nume_Model],rand,INFOS[rand][NrBMP])//cmap/max/charsmax...
	ak47[id]=rand
	new iWep
	iWep = give_item(id, "weapon_ak47")
	engfunc(EngFunc_SetModel, iWep, INFOS[ak47[id]][p_Model])
	set_pev(iWep, pev_body, ak47[id])
	set_pev(INFOS[ak47[id]][p_Model],pev_skin,ak47[id])
	Event_CurWeapon(id)

	menu_destroy(menu)
	return PLUGIN_HANDLED
}
Pentru ajutor, faceți cerere bine detaliată, completând și respectând modelul corespunzător.
Nu-mi mai dați cereri doar pentru a mă avea în lista de prieteni.
Dacă te ajut, și mă ignori/etc > te adaug în „foe”.
Aveți grijă la cei ce încearcă să mă copieze sau să dea drept mine..Puteți lua legătura cu mine prin STEAM dacă aveți o problemă/nelămurire în acest caz! Cont de forum am doar aici.
În cazul în care utilizați ceva din ce am postat(ex: aici), e bine să fiți la curent cu modificările aduse și de aici, iar dacă sunt ceva probleme nu ezitați să luați legătura cu mine. Actualizarea unor coduri nu se vor afișa public, doar dacă se găsește ceva critic/urgent de remediat, unele fiind coduri vechi iar unele refăcute chiar recent dar private.
* Nume pe cs1.6: eVoLuTiOn \ Nume vechi: eVo
* Atelierul meu - post2819572.html#p2819572 (închis, click link ca să vedeți de ce)
Post Reply

Return to “Cereri”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 28 guests