Skocz do zawartości

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

Zmiana skina broni


Najlepsza odpowiedź Robiin, 16.05.2018 16:03

Zamień linijkę 16 z

public pluign_precache()

na

public plugin_precache()

Literówka :>

Przejdź do postu


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
7 odpowiedzi w tym temacie

#1 ChrisN

    Wszechpomocny

  • Użytkownik

Reputacja: 31
Życzliwy

  • Postów:303
  • Imię:Christopher
Offline

Napisano 15.05.2018 19:31

Siemka, chciałem zrobić prosty plugin który by zmieniał model broni, który potem mógł bym rozwijać o dodatkowe funkcje tylko nie chce mi coś działać :( 

 

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>
 
new AK47_MODEL[ 64 ] = "models/skillowcy/ak47/v_ak1.mdl"
 
new szClip, szAmmo
 
public plugin_int()
{
register_event( "CurWeapon", "event_cur_weapon", "be", "1=1" )
}
 
public plugin_precache()
{
precache_model( AK47_MODEL )
}
 
public event_cur_weapon( id )
{
new szWeapID = get_user_weapon( id, szClip, szAmmo )
 
if ( szWeapID == CSW_AK47 )
{
set_pev( id, pev_viewmodel2, AK47_MODEL )
}
 
}

  • +
  • -
  • 0

#2 Tojaocb

    Zaawansowany

  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:96
Offline

Napisano 15.05.2018 22:04

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>
 
new const AK47_MODEL[] = "models/skillowcy/ak47/v_ak1.mdl"
 
 
public plugin_int()
{
	register_event("event_cur_weapon","CurWeapon","be", "1=1")
}
 
public plugin_precache()
{
	precache_model( AK47_MODEL )
}

public event_cur_weapon(id) {
	
	new szWeapID = read_data(2)
	if( szWeapID == CSW_AK47){ 
		set_pev(id, pev_viewmodel2, AK47_MODEL)
	}
}

usunąłem zbędne rzeczy tak powinno działać


Użytkownik Tojaocb edytował ten post 15.05.2018 22:06

  • +
  • -
  • 1

Pomogłem? Daj add.png ciebie nie kosztuje, mnie motywuje.


#3 Robiin

    Godlike

  • Support Team

Reputacja: 1 107
Super Hero

  • Postów:2 051
  • Imię:Robert
  • Lokalizacja:Wrocław
Offline

Napisano 15.05.2018 23:03

Spoiler

 

Do zmiany modelu broni wydajniejszy jest event ItemDeploy, który trigerruje się przy wyciągnieciu danej broni (2 linijka w plugin_init, 2 argument [lub w EventWeaponString, jeśli zależy Ci na zmianie broni]). CurWeapon wykonuje się przy każdej zmianie stanu broni (czyt. reload, deploy, shoot etc.). Użyłem engine, zamiast fakemety - bez większego znaczenia dlaczego, nie miałem na celu wybrania lepszej (jako 'wydajniejszej') opcji spośród tych dwu. Poczytać o zmianie modelu broni możesz tutaj; https://amxx.pl/topi...e-modeli-broni/


  • +
  • -
  • 1

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.


#4 ChrisN

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 31
Życzliwy

  • Postów:303
  • Imię:Christopher
Offline

Napisano 16.05.2018 15:08

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>
 
new const AK47_MODEL[] = "models/skillowcy/ak47/v_ak1.mdl"
 
 
public plugin_int()
{
	register_event("event_cur_weapon","CurWeapon","be", "1=1")
}
 
public plugin_precache()
{
	precache_model( AK47_MODEL )
}

public event_cur_weapon(id) {
	
	new szWeapID = read_data(2)
	if( szWeapID == CSW_AK47){ 
		set_pev(id, pev_viewmodel2, AK47_MODEL)
	}
}

usunąłem zbędne rzeczy tak powinno działać

 

 

Niby działa pobiera model ale w grze nie zamienia :/

 

 

Spoiler

 

Do zmiany modelu broni wydajniejszy jest event ItemDeploy, który trigerruje się przy wyciągnieciu danej broni (2 linijka w plugin_init, 2 argument [lub w EventWeaponString, jeśli zależy Ci na zmianie broni]). CurWeapon wykonuje się przy każdej zmianie stanu broni (czyt. reload, deploy, shoot etc.). Użyłem engine, zamiast fakemety - bez większego znaczenia dlaczego, nie miałem na celu wybrania lepszej (jako 'wydajniejszej') opcji spośród tych dwu. Poczytać o zmianie modelu broni możesz tutaj; https://amxx.pl/topi...e-modeli-broni/

 

 

Wyskakuje cały czas, że model trzeba z precache(owac), jak bym nie zmienil i tak to samo


  • +
  • -
  • 0

#5 Robiin

    Godlike

  • Support Team

Reputacja: 1 107
Super Hero

  • Postów:2 051
  • Imię:Robert
  • Lokalizacja:Wrocław
Offline

Napisano 16.05.2018 16:03   Najlepsza odpowiedź

Zamień linijkę 16 z

public pluign_precache()

na

public plugin_precache()

Literówka :>


  • +
  • -
  • 1

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.


#6 ChrisN

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 31
Życzliwy

  • Postów:303
  • Imię:Christopher
Offline

Napisano 16.05.2018 16:20

Zamień linijkę 16 z

public pluign_precache()

na

public plugin_precache()

Literówka :>

 

A takie pytanie jeśli będę chciał dodać więcej skinów do innych broni to jak to zrobić w tym, tak zadziała?

 

new const EventWeaponString[] = "weapon_ak47, weapon_m4a1"

 

czy

 

new const EventWeaponString[] = "weapon_ak47","weapon_m4a1"

  • +
  • -
  • 0

#7 ChrisN

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 31
Życzliwy

  • Postów:303
  • Imię:Christopher
Offline

Napisano 16.05.2018 16:28

Próbuje to przerobić na menu ale nie chce mi go w ogóle odpalic (tego menu), błędów nie ma a menu i tak się nie odpala

 

#include <amxmodx>
#include <hamsandwich>
#include <engine>
#include <cstrike>
#include <fun>
 
#define AUTHOR "aSior - amxx.pl/user/60210-asior/"
 
new const EventWeaponString[] = "weapon_ak47" // ID broni (string), ktorej > wyciagniecie < bedzie trigerrowalo event ItemDeploy
new const AK47Model1[] = "models/skillowcy/ak47/v_ak1.mdl"
new const AK47Model2[] = "models/skillowcy/ak47/v_ak2.mdl"
 
public plugin_init()
{
register_plugin("x", "v0.1", AUTHOR);
RegisterHam(Ham_Item_Deploy, EventWeaponString, "ItemDeploy",1);
register_clcmd("say /skiny", "Sklep");
register_clcmd("say /skin", "Sklep");
}
 
public plugin_precache()
{
precache_model(AK47Model1);
precache_model(AK47Model2);
} 
public Sklep(id)
{
new tytul[25];
format(tytul, 24, "\rSkiny - Skillowcy.eu");
new menu = menu_create(tytul, "Sklep_Handler");
menu_additem(menu, "\yAK47");
menu_additem(menu, "\yM4A1");//4
menu_additem(menu, "\yAWP");//5
menu_additem(menu, "\yKNIFE");//6
menu_display(id, menu);
 
}
 
public Sklep_Handler(id, menu, item)
{
 
if(!is_user_alive(id) || !is_user_connected(id))
return PLUGIN_CONTINUE;
 
if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_CONTINUE;
}
 
switch(item)
{
case 0:
{
AK47_menu(id)
}
case 1:
{
AK47_menu(id)
}
case 2:
{
AK47_menu(id)
}
case 3:
{
AK47_menu(id)
}
}
 
return PLUGIN_CONTINUE;
}
 
public AK47_menu(id)
{
new tytul[25];
format(tytul, 24, "\rSkiny - Skillowcy.eu");
new menu = menu_create(tytul, "Sklep_Handler");
menu_additem(menu, "\yDRAGON KING");
menu_additem(menu, "\yPRIDE");//4
menu_display(id, menu);
 
}
 
public AK47_menuhandle(id, menu, item, Weapon)
{
 
if(!is_user_alive(id) || !is_user_connected(id))
return PLUGIN_CONTINUE;
 
if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_CONTINUE;
}
 
switch(item)
{
case 0:
{
static index;
index = entity_get_edict(Weapon, EV_ENT_owner);
 
entity_set_string(index, EV_SZ_viewmodel, AK47Model1);
}
case 1:
{
static index;
index = entity_get_edict(Weapon, EV_ENT_owner);
 
entity_set_string(index, EV_SZ_viewmodel, AK47Model2);
}
}
 
return PLUGIN_CONTINUE;
}

  • +
  • -
  • 0

#8 ChrisN

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 31
Życzliwy

  • Postów:303
  • Imię:Christopher
Offline

Napisano 16.05.2018 20:47

Ogarnąłem, że menu działa ale nie chce mi zmieniac modelu po wybraniu opcji z menu :/

 

#include <amxmodx>
#include <hamsandwich>
#include <engine>
#include <cstrike>
#include <fun>
 
new const EventWeaponString[] = "weapon_ak47"
 
public plugin_init()
{
register_clcmd("say /skiny", "Sklep");
register_clcmd("say /skin", "Sklep");
RegisterHam(Ham_Item_Deploy, EventWeaponString, "ItemDeploy",1);
}
 
public plugin_precache()
{
precache_model("models/skillowcy/ak47/v_ak1.mdl");
precache_model("models/skillowcy/ak47/v_ak2.mdl");
} 
 
public Sklep(id)
{
new tytul[25];
format(tytul, 24, "\rSkiny - Skillowcy.eu");
new menu = menu_create(tytul, "Sklep_Handler");
menu_additem(menu, "\yAK47");
menu_additem(menu, "\yM4A1");//4
menu_additem(menu, "\yAWP");//5
menu_additem(menu, "\yKNIFE");//6
menu_display(id, menu);
 
}
 
public Sklep_Handler(id, menu, item)
{
 
if(!is_user_alive(id) || !is_user_connected(id))
return PLUGIN_CONTINUE;
 
if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_CONTINUE;
}
 
switch(item)
{
case 0:
{
AK47_menu(id)
}
case 1:
{
AK47_menu(id)
}
case 2:
{
AK47_menu(id)
}
case 3:
{
AK47_menu(id)
}
}
 
return PLUGIN_CONTINUE;
}
 
public AK47_menu(id)
{
new tytul[25];
format(tytul, 24, "\rSkiny - Skillowcy.eu");
new menu = menu_create(tytul, "AK47_menuhandle");
menu_additem(menu, "\yDRAGON KING");
menu_additem(menu, "\yPRIDE");//4
menu_display(id, menu);
 
}
 
public AK47_menuhandle(Weapon, id, menu, item)
{
 
if(!is_user_alive(id) || !is_user_connected(id))
return PLUGIN_CONTINUE;
 
if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_CONTINUE;
}
 
switch(item)
{
case 0:
{
static index;
index = entity_get_edict(Weapon, EV_ENT_owner);
entity_set_string(index, EV_SZ_viewmodel, "models/skillowcy/ak47/v_ak1.mdl");
}
case 1:
{
static index;
index = entity_get_edict(Weapon, EV_ENT_owner);
entity_set_string(index, EV_SZ_viewmodel, "models/skillowcy/ak47/v_ak2.mdl");
}
}
 
return PLUGIN_CONTINUE;
}

  • +
  • -
  • 0




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

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