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

Problem z klasą CoD


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

#1 Eustachy8

    Wszechpomocny

  • Użytkownik

Reputacja: 116
Zaawansowany

  • Postów:304
  • Imię:Kuba
  • Lokalizacja:Buczacz
Offline

Napisano 22.12.2011 13:00

Witam!

Postanowiłem stworzyć klasę, jest to moja pierwsza, więc pewnie nie wygląda to za ciekawie. Wracając do tematu, nie przechodzi mi kompilacji :/ wychodzą 2 błędy

Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team

codclass_elitarnyzolnierz.sma(35) : warning 217: loose indentation
codclass_elitarnyzolnierz.sma(37) : error 035: argument type mismatch (argument 2)

1 Error.
Could not locate output file codclass_elitarnyzolnierz.amxx (compile failed).

prosiłbym również o poprawienie innych (jeżeli występują) błędów.

Edit: zmniejszenie grawitacji dodałem poprzez generatora klas.

Załączone pliki


Użytkownik Eustachy8 edytował ten post 22.12.2011 13:01

  • +
  • -
  • 0

24azdk0.jpg
b_350_20_692108_381007_FFFFFF_000000.png
 


#2 Nenczoks

    Banned

  • Zbanowany

Reputacja: 50
Pomocny

  • Postów:358
  • Lokalizacja:Warszawa
Offline

Napisano 22.12.2011 13:17


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


new const nazwa[] = "Elitarny zolnierz";
new const opis[] = "Ma 2 MP5 i Elita oraz zmniejszoną grawitację.";
new const bronie = (1<<CSW_ELITE);
new const zdrowie = 30;
new const kondycja = 30;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new bool: ma_klase[33];


public plugin_init()
{
register_plugin(nazwa, "1.0", "amxx.pl");

cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
RegisterHam(Ham_Spawn, "player", "fwSpawn_Grawitacja", 1);

}

public cod_class_enabled(id)
{
if (ma_klase[id] && is_user_alive(id) && is_user_connected(id)){
entity_set_float(id, EV_FL_gravity, 600.0/800.0);
cod_give_weapon(id, CSW_MP5NAVY);
cs_set_user_bpammo(id,CSW_MP5NAVY , 240);
cs_set_weapon_ammo(CSW_MP5NAVY, 60);
ma_klase[id] = true;
}
}

public cod_class_disabled(id)
{
entity_set_float(id, EV_FL_gravity, 1.0);
cod_take_weapon( id, CSW_MP5NAVY );
ma_klase[id] = false;

}

public fwSpawn_Grawitacja(id)
{
if(ma_klase[id]) entity_set_float(id, EV_FL_gravity, 600.0/800.0);
}


A tak nie może być?

Użytkownik Nenczoks edytował ten post 22.12.2011 13:17


#3 Eustachy8

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 116
Zaawansowany

  • Postów:304
  • Imię:Kuba
  • Lokalizacja:Buczacz
Offline

Napisano 22.12.2011 13:28

nie dodaje broni (mp5) i nie zmniejsza grawitacji :/

Użytkownik Eustachy8 edytował ten post 22.12.2011 13:28

  • +
  • -
  • 0

24azdk0.jpg
b_350_20_692108_381007_FFFFFF_000000.png
 


#4 Nenczoks

    Banned

  • Zbanowany

Reputacja: 50
Pomocny

  • Postów:358
  • Lokalizacja:Warszawa
Offline

Napisano 22.12.2011 13:33

Pytania: ma dawać tą broń + zmniejszyć grawitację gracza, tak?

#5 Eustachy8

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 116
Zaawansowany

  • Postów:304
  • Imię:Kuba
  • Lokalizacja:Buczacz
Offline

Napisano 22.12.2011 13:36

tak, jak już się naprawi te błędy, planuję również dodać zmianę modelu na podwójną mp5. Ale to później.
  • +
  • -
  • 0

24azdk0.jpg
b_350_20_692108_381007_FFFFFF_000000.png
 


#6 Nenczoks

    Banned

  • Zbanowany

Reputacja: 50
Pomocny

  • Postów:358
  • Lokalizacja:Warszawa
Offline

Napisano 22.12.2011 14:12

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <cstrike>
#include <fun>

new const nazwa[] = "Elitarny zolnierz";
new const opis[] = "Ma 2 MP5 oraz zmniejszoną grawitację.";
new const bronie = (1<<CSW_MP5NAVY);
new const zdrowie = 30;
new const kondycja = 30;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new bool: ma_klase[33];


public plugin_init()
{
register_plugin(nazwa, "1.0", "QTM_Peyote");

cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}

public cod_class_enabled(id)
{
set_user_gravity(id, x.x) // wstaw tutaj wartosc, np. 0.5
cs_set_user_bpammo(id,CSW_MP5NAVY , 240);
cs_set_weapon_ammo(CSW_MP5NAVY, 60);
ma_klase[id] = true;
}

public cod_class_disabled(id)
{
ma_klase[id] = false;
set_user_gravity(id, 1.0)
}



???

#7 Eustachy8

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 116
Zaawansowany

  • Postów:304
  • Imię:Kuba
  • Lokalizacja:Buczacz
Offline

Napisano 22.12.2011 17:10

a więc tak, dodaje fajnie mp5, ale dalej ma standardową ilość amunicji :/ (słyszałem właśnie, że nie powinno jej się dodawać tam w stałych bo nie będzie banglać z ammo coś, dlatego w mojej pierwszej próbie dodawałem ją w enable). Zależy mi by się zwiększyła ponieważ chce później ten nowy model wgrac, gdzie są 2 mp5.

a btw, ile mam ustawić gravitacje? aby z 800 zrobić 600? bo dałem 600.0 i była fest za duża ;D

Użytkownik Eustachy8 edytował ten post 22.12.2011 17:12

  • +
  • -
  • 0

24azdk0.jpg
b_350_20_692108_381007_FFFFFF_000000.png
 


#8 Nenczoks

    Banned

  • Zbanowany

Reputacja: 50
Pomocny

  • Postów:358
  • Lokalizacja:Warszawa
Offline

Napisano 22.12.2011 17:23

Nie ustawia się tak wartości "600.0". Nastomiast 1.0 to 800, 0.5 - 400, 0.25 - 200... Więc 600 to będzie 0.75 w "x.x".
A z tym drugim dam edit potem.

Użytkownik Nenczoks edytował ten post 22.12.2011 17:23


#9 Eustachy8

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 116
Zaawansowany

  • Postów:304
  • Imię:Kuba
  • Lokalizacja:Buczacz
Offline

Napisano 22.12.2011 19:12

pobawiłem się z kolegą i już prawie gotowe. Chodzi o to, że zrobił się bezlik :/ non stop ustawia 60 naboi w magazynku, bo cur_weapon jest tez czytane (chyba, tak się domyślam) po strzale każdym. Ma ktoś pomysł jak to naprawić?


#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <cstrike>
#include <fun>
#include <fakemeta>

new const nazwa[]   = "Elitarny zolnierz";
new const opis[]    = "Ma 2 MP5 i Elite oraz zmniejszoną grawitację.";
new const bronie    = (1<<CSW_MP5NAVY | 1<<CSW_ELITE);
new const zdrowie   = 30;
new const kondycja  = 30;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new bool: ma_klase[33];


public plugin_init()
{
    register_plugin(nazwa, "1.0", "QTM_Peyote");

    cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);       
    RegisterHam(Ham_Spawn, "player", "Spawn", 1);
register_event("CurWeapon", "CurWeapon", "be", "1=1")

}

public cod_class_enabled(id)
{
    ma_klase[id] = true;
    set_user_gravity(id, 0.75)

}

public cod_class_disabled(id)
{
    ma_klase[id] = false;
    set_user_gravity(id, 1.0)
}

public Spawn(id)
{
    if(ma_klase[id] && is_user_alive(id))
    {
        new weapon_id = find_ent_by_owner(-1, "weapon_mp5navy", id); //szuka id bytu broni ak47 u gracza o id == id
        if(weapon_id) //jeżeli znaleziono broń - byt ma inną wartość niż 0
        {
             cs_set_weapon_ammo(weapon_id, 60); //ustaw broni 50 ammo
             cs_set_user_bpammo(id, CSW_MP5NAVY, 200)
        }
    }
}
public plugin_precache()
{

        precache_model("models/v_smg_mp5navy2.mdl");
        //powyżej zmieniasz ścieżki do nowych modeli
}
public CurWeapon(id)
{
        new weapon = read_data(2);

        if(ma_klase[id]) //tutaj wstawiamy ma_klase lub ma_perk
        {
                if(weapon == CSW_MP5NAVY) //tutaj ustawiamy broń, jakiej model będziemy zmieniać
                {
                        set_pev(id, pev_viewmodel2, "models/v_smg_mp5navy2.mdl")
                         
//tu dajemy ścieżkę do nowego modeli v_

                }
        }
new weapon_id = find_ent_by_owner(-1, "weapon_mp5navy", id) //szuka id bytu broni ak47 u gracza o id == id
        if(weapon_id) //jeżeli znaleziono broń - byt ma inną wartość niż 0
        {
             cs_set_weapon_ammo(weapon_id, 60) //ustaw broni 50 ammo
             cs_set_user_bpammo(id, CSW_MP5NAVY, 200)
        }

}

  • +
  • -
  • 0

24azdk0.jpg
b_350_20_692108_381007_FFFFFF_000000.png
 


#10 Nenczoks

    Banned

  • Zbanowany

Reputacja: 50
Pomocny

  • Postów:358
  • Lokalizacja:Warszawa
Offline

Napisano 22.12.2011 19:18

Po strzela każdym występuje 60 naboi? Hm, postaram się coś w z tym zrobić, dam tutaj edita, jeżeli nikt nie napisze.

#11 Eustachy8

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 116
Zaawansowany

  • Postów:304
  • Imię:Kuba
  • Lokalizacja:Buczacz
Offline

Napisano 24.12.2011 21:06

doszły kolejne poprawki i teraz klasa crashuje serwer :/ a najlepsze jest to, że nie wywala żadnych errorów ;<


#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <cstrike>
#include <fun>
#include <fakemeta>

new const nazwa[]   = "Elitarny zolnierz";
new const opis[]	= "Ma 2 UZI i Elite oraz zmniejszoną grawitację.";
new const bronie	= (1<<CSW_MP5NAVY | 1<<CSW_ELITE);
new const zdrowie   = 30;
new const kondycja  = 30;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new bool: ma_klase[33];


public plugin_init()
{
	register_plugin(nazwa, "1.0", "QTM_Peyote");

	cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);	  
	RegisterHam(Ham_Spawn, "player", "Spawn", 1);
register_event("CurWeapon", "CurWeapon", "be", "1=1")

}

public cod_class_enabled(id)
{
	ma_klase[id] = true;
	set_user_gravity(id, 0.75)

}

public cod_class_disabled(id)
{
	ma_klase[id] = false;
	set_user_gravity(id, 1.0)
}

public Spawn(id)
{
	if(ma_klase[id] && is_user_alive(id))
	{
		new weapon_id = find_ent_by_owner(-1, "weapon_mp5navy", id); //szuka id bytu broni ak47 u gracza o id == id
		if(weapon_id) //jeżeli znaleziono broń - byt ma inną wartość niż 0
		{
			 cs_set_weapon_ammo(weapon_id, 60); //ustaw broni 50 ammo
			 cs_set_user_bpammo(id, CSW_MP5NAVY, 200)
		}
	}
}
public plugin_precache()
{

		precache_model("models/models/v_mp5dual.mdl");
		//powyżej zmieniasz ścieżki do nowych modeli
}
public CurWeapon(id)
{
		new weapon = read_data(2);

		if(ma_klase[id]) //tutaj wstawiamy ma_klase lub ma_perk
		{
				if(weapon == CSW_MP5NAVY) //tutaj ustawiamy broń, jakiej model będziemy zmieniać
				{
						set_pev(id, pev_viewmodel2, "models/v_mp5dual.mdl")
						
//tu dajemy ścieżkę do nowego modeli v_

				}
		}
new weapon_id = find_ent_by_owner(-1, "weapon_mp5navy", id) //szuka id bytu broni ak47 u gracza o id == id
		if(weapon_id) //jeżeli znaleziono broń - byt ma inną wartość niż 0
		{
			 cs_set_weapon_ammo(weapon_id, 60) //ustaw broni 60 ammo
			 cs_set_user_bpammo(id, CSW_MP5NAVY, 200)
		}

}

raz wywaliło errora, oto on:

L 12/22/2011 - 17:05:55: Start of error session.
L 12/22/2011 - 17:05:55: Info (map "de_kabul") (file "addons/amxmodx/logs/error_20111222.log")
L 12/22/2011 - 17:05:55: [CSTRIKE] Non-player entity 19 out of range
L 12/22/2011 - 17:05:55: [AMXX] Run time error 10 (plugin "codclass_elitarnyzolnierz.amxx") (native "cs_set_weapon_ammo") - debug not enabled!
L 12/22/2011 - 17:05:55: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 12/22/2011 - 17:06:03: [CSTRIKE] Non-player entity 19 out of range
L 12/22/2011 - 17:06:03: [AMXX] Run time error 10 (plugin "codclass_elitarnyzolnierz.amxx") (native "cs_set_weapon_ammo") - debug not enabled!
L 12/22/2011 - 17:06:03: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 12/22/2011 - 17:32:36: Start of error session.
L 12/22/2011 - 17:32:36: Info (map "de_dust2") (file "addons/amxmodx/logs/error_20111222.log")
L 12/22/2011 - 17:32:36: [CSTRIKE] Non-player entity 19 out of range
L 12/22/2011 - 17:32:37: [AMXX] Run time error 10 (plugin "codclass_elitarnyzolnierz.amxx") (native "cs_set_weapon_ammo") - debug not enabled!
L 12/22/2011 - 17:32:37: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 12/22/2011 - 17:47:09: Start of error session.
L 12/22/2011 - 17:47:09: Info (map "de_dust") (file "addons/amxmodx/logs/error_20111222.log")
L 12/22/2011 - 17:47:09: [CSTRIKE] Non-player entity 19 out of range
L 12/22/2011 - 17:47:09: [AMXX] Run time error 10 (plugin "codclass_elitarnyzolnierz.amxx") (native "cs_set_weapon_ammo") - debug not enabled!
L 12/22/2011 - 17:47:09: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 12/22/2011 - 17:47:12: [CSTRIKE] Non-player entity 19 out of range
L 12/22/2011 - 17:47:12: [AMXX] Run time error 10 (plugin "codclass_elitarnyzolnierz.amxx") (native "cs_set_weapon_ammo") - debug not enabled!
L 12/22/2011 - 17:47:12: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 12/22/2011 - 17:51:08: Start of error session.
L 12/22/2011 - 17:51:08: Info (map "de_dust") (file "addons/amxmodx/logs/error_20111222.log")
L 12/22/2011 - 17:51:08: [CSTRIKE] Non-player entity 19 out of range
L 12/22/2011 - 17:51:08: [AMXX] Run time error 10 (plugin "codclass_elitarnyzolnierz.amxx") (native "cs_set_weapon_ammo") - debug not enabled!
L 12/22/2011 - 17:51:08: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 12/22/2011 - 17:53:20: [CSTRIKE] Non-player entity 19 out of range
L 12/22/2011 - 17:53:20: [AMXX] Run time error 10 (plugin "codclass_elitarnyzolnierz.amxx") (native "cs_set_weapon_ammo") - debug not enabled!
L 12/22/2011 - 17:53:20: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 12/22/2011 - 17:55:07: [CSTRIKE] Non-player entity 19 out of range
L 12/22/2011 - 17:55:07: [AMXX] Run time error 10 (plugin "codclass_elitarnyzolnierz.amxx") (native "cs_set_weapon_ammo") - debug not enabled!
L 12/22/2011 - 17:55:07: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 12/22/2011 - 18:08:27: [CSTRIKE] Non-player entity 19 out of range
L 12/22/2011 - 18:08:27: [AMXX] Run time error 10 (plugin "codclass_elitarnyzolnierz.amxx") (native "cs_set_weapon_ammo") - debug not enabled!
L 12/22/2011 - 18:08:27: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 12/22/2011 - 18:11:03: Start of error session.
L 12/22/2011 - 18:11:03: Info (map "de_aztec") (file "addons/amxmodx/logs/error_20111222.log")
L 12/22/2011 - 18:11:03: [CSTRIKE] Non-player entity 19 out of range
L 12/22/2011 - 18:11:03: [AMXX] Run time error 10 (plugin "codclass_elitarnyzolnierz.amxx") (native "cs_set_weapon_ammo") - debug not enabled!
L 12/22/2011 - 18:11:03: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 12/22/2011 - 18:12:37: [CSTRIKE] Non-player entity 19 out of range
L 12/22/2011 - 18:12:37: [AMXX] Run time error 10 (plugin "codclass_elitarnyzolnierz.amxx") (native "cs_set_weapon_ammo") - debug not enabled!
L 12/22/2011 - 18:12:37: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 12/22/2011 - 18:31:02: [CSTRIKE] Non-player entity 19 out of range
L 12/22/2011 - 18:31:02: [AMXX] Run time error 10 (plugin "codclass_elitarnyzolnierz.amxx") (native "cs_set_weapon_ammo") - debug not enabled!
L 12/22/2011 - 18:31:02: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).

Użytkownik Eustachy8 edytował ten post 24.12.2011 21:12

  • +
  • -
  • 0

24azdk0.jpg
b_350_20_692108_381007_FFFFFF_000000.png
 


#12 d0naciak

    Godlike

  • Power User

Reputacja: 1 029
Hero

  • Postów:2 414
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Kotlarka
Offline

Napisano 24.12.2011 23:43

do cod_class_enabled dodaj
Spawn(id)

i z publica CurWeapon(id) usuń

new weapon_id = find_ent_by_owner(-1, "weapon_mp5navy", id) //szuka id bytu broni ak47 u gracza o id == id
if(weapon_id) //jeżeli znaleziono broń - byt ma inną wartość niż 0
{
cs_set_weapon_ammo(weapon_id, 60) //ustaw broni 60 ammo
cs_set_user_bpammo(id, CSW_MP5NAVY, 200)
}


  • +
  • -
  • 0

#13 Eustachy8

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 116
Zaawansowany

  • Postów:304
  • Imię:Kuba
  • Lokalizacja:Buczacz
Offline

Napisano 24.12.2011 23:57

po spawnie jest fajnie ale po zmianie broni albo przeładowaniu ma tylko 30 w magazynku ;<
a crashowało, bo przez przypadek dałem złą ścieżkę do ściągnięcia modelu.

edit: Nie działa również w pierwszej rundzie ;<

Użytkownik Eustachy8 edytował ten post 25.12.2011 12:12

  • +
  • -
  • 0

24azdk0.jpg
b_350_20_692108_381007_FFFFFF_000000.png
 


#14 radim

    Godlike

  • Moderator

Reputacja: 939
Master

  • Postów:2 725
  • Steam:steam
  • Imię:Arkadiusz
  • Lokalizacja:Janów Lub.
Offline

Napisano 25.12.2011 12:46


#include <amxmodx>

#include <amxmisc>

#include <codmod>

#include <engine>

#include <hamsandwich>

#include <cstrike>

#include <fakemeta_util>



new const nazwa[]   = "Elitarny zolnierz";

new const opis[]    = "Ma MP5 (wiecej ammo) i Elita oraz zmniejszoną grawitację.";

new const bronie    = 1<<CSW_ELITE | 1<<CSW_MP5NAVY;

new const zdrowie   = 30;

new const kondycja  = 30;

new const inteligencja = 0;

new const wytrzymalosc = 0;



new bool: ma_klase[33];



public plugin_init()

{

    register_plugin(nazwa, "1.0", "amxx.pl");

    

    cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);   

    RegisterHam(Ham_Spawn, "player", "fwSpawn", 1);

    

    register_event("ResetHUD", "ResetHUD", "abe");

    register_event("HLTV", "Nowa_Runda", "a", "1=0", "2=0")

}



public cod_class_enabled(id)

{

    entity_set_float(id, EV_FL_gravity, 600.0/800.0);

    ma_klase[id] = true;

}



public cod_class_disabled(id)

{

    entity_set_float(id, EV_FL_gravity, 800.0/800.0);

    ma_klase[id] = false;

}



public fwSpawn(id)

{

    if(!is_user_connected(id)) return;

    

    if(!ma_klase[id]) return;

    

    cs_set_user_bpammo(id, CSW_MP5NAVY, 240);

    entity_set_float(id, EV_FL_gravity, 600.0/800.0);

}



public ResetHUD(id)

    set_task(0.1, "ResetHUDx", id);



public ResetHUDx(id)

{

    if(!is_user_connected(id)) return;

    

    if(!ma_klase[id]) return;

    

    cs_set_weapon_ammo(CSW_MP5NAVY, 60) //ustaw broni 60 ammo

    

}




  • +
  • -
  • 0

Chcąc napisać do mnie prywatną wiadomość, wpierw zapoznaj się ze stroną "O mnie" w moim profilu użytkownika [ radim ] !


#15 Eustachy8

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 116
Zaawansowany

  • Postów:304
  • Imię:Kuba
  • Lokalizacja:Buczacz
Offline

Napisano 25.12.2011 15:31

niestety, w pierwszej rundzie jest standard (30 - 120) w kolejnych jest 30 - 240 (nie działa 60 w magazynku).
I jeszcze usunąłeś zamienianie modelu.

Ma wizja to 2 mp5 (dlatego 60 w magazynku, później jeszcze zwiększę szybkość strzelania) i grawitacja.

to w sumie była by już finalna wersja, trzeba tylko by po każdym przeładowaniu miał 60 naboi.... pomógłby ktoś ;D




#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <fakemeta_util>

new const nazwa[]   = "Elitarny zolnierz";
new const opis[]        = "Ma dwie MP5 i Elite oraz zmniejszoną grawitację.";
new const bronie        = (1<<CSW_MP5NAVY | 1<<CSW_ELITE);
new const zdrowie   = 30;
new const kondycja  = 30;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new bool: ma_klase[33];


public plugin_init()
{
        register_plugin(nazwa, "1.0", "QTM_Peyote");

        cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);   
        RegisterHam(Ham_Spawn, "player", "Spawn", 1);
register_event("CurWeapon", "CurWeapon", "be", "1=1")

}

public cod_class_enabled(id)
{
        ma_klase[id] = true;


}

public cod_class_disabled(id)
{
        ma_klase[id] = false;

}

public Spawn(id)
{
        if(ma_klase[id] && is_user_alive(id))
        {
                new weapon_id = find_ent_by_owner(-1, "weapon_mp5navy", id); //szuka id bytu broni ak47 u gracza o id == id
                if(weapon_id) //jeżeli znaleziono broń - byt ma inną wartość niż 0
                {
                         cs_set_weapon_ammo(weapon_id, 60); //ustaw broni 50 ammo
                         cs_set_user_bpammo(id, CSW_MP5NAVY, 200)
                }
set_user_gravity(id, 0.75)
        }
}
public plugin_precache()
{

                precache_model("models/v_mp5dual.mdl");
                //powyżej zmieniasz ścieżki do nowych modeli
}
public CurWeapon(id)
{
                new weapon = read_data(2);

                if(ma_klase[id]) //tutaj wstawiamy ma_klase lub ma_perk
                {
                                if(weapon == CSW_MP5NAVY) //tutaj ustawiamy broń, jakiej model będziemy zmieniać
                                {
                                                set_pev(id, pev_viewmodel2, "models/v_mp5dual.mdl")

//tu dajemy ścieżkę do nowego modeli v_

                                }
                }
new iWeapon = read_data(2);
        new iEnt;

        static Float:fSpeedMultiplier = 0.7;

        if(iWeapon == CSW_MP5NAVY)
        {
                iEnt = fm_find_ent_by_owner(-1, "weapon_mp5navy", id)

                set_pdata_float( iEnt, 46, ( get_pdata_float(iEnt, 46, 4) * fSpeedMultiplier), 4 );
                set_pdata_float( iEnt, 47, ( get_pdata_float(iEnt, 47, 4) * fSpeedMultiplier), 4 );
        }



}

Użytkownik Eustachy8 edytował ten post 27.12.2011 11:32

  • +
  • -
  • 0

24azdk0.jpg
b_350_20_692108_381007_FFFFFF_000000.png
 


#16 Ojciec Dyrektor

    papa smerf.

  • Przyjaciel

Reputacja: 477
Wszechobecny

  • Postów:3 035
  • Imię:Paweł
  • Lokalizacja:Rabka-Zdrój
Offline

Napisano 29.12.2011 00:40

Automatyczna wiadomość


Ten temat został przeniesiony z forum:
AMX Mod XProblemy z pluginami
do
ModyCall of Duty ModProblemy


  • +
  • -
  • 0

#17 Eustachy8

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 116
Zaawansowany

  • Postów:304
  • Imię:Kuba
  • Lokalizacja:Buczacz
Offline

Napisano 29.12.2011 18:56


#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <fakemeta_util>

new const nazwa[]   = "Elitarny zolnierz";
new const opis[]        = "Ma dwie MP5 i Elite oraz zmniejszoną grawitację.";
new const bronie        = (1<<CSW_MP5NAVY | 1<<CSW_ELITE);
new const zdrowie   = 30;
new const kondycja  = 30;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new bool: ma_klase[33];
static Float:Last[33];
new const max_clip[31] = { -1, 13, -1, 10,  1,  7,  1,  30, 30,  1,  30,  20,  25, 30, 35, 25,  12,  20, 
10,  30, 100,  8, 30,  30, 20,  2,  7, 30, 30, -1,  50 };


public plugin_init()
{
        register_plugin(nazwa, "1.0", "QTM_Peyote");

        cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);   
        RegisterHam(Ham_Spawn, "player", "Spawn", 1);
register_forward(FM_CmdStart, "CmdStart");
register_event("CurWeapon", "CurWeapon", "be", "1=1")

}

public cod_class_enabled(id)
{
        ma_klase[id] = true;


}

public cod_class_disabled(id)
{
        ma_klase[id] = false;

}

public Spawn(id)
{
        if(ma_klase[id] && is_user_alive(id))
        {
                new weapon_id = find_ent_by_owner(-1, "weapon_mp5navy", id); //szuka id bytu broni ak47 u gracza o id == id
                if(weapon_id) //jeżeli znaleziono broń - byt ma inną wartość niż 0
                {
                         cs_set_weapon_ammo(weapon_id, 60); //ustaw broni 50 ammo
                         cs_set_user_bpammo(id, CSW_MP5NAVY, 200)
                }
set_user_gravity(id, 0.75)
        }
}
public plugin_precache()
{

                precache_model("models/v_mp5dual.mdl");
                //powyżej zmieniasz ścieżki do nowych modeli
}
public CurWeapon(id)
{
                new weapon = read_data(2);

                if(ma_klase[id]) //tutaj wstawiamy ma_klase lub ma_perk
                {
                                if(weapon == CSW_MP5NAVY) //tutaj ustawiamy broń, jakiej model będziemy zmieniać
                                {
                                                set_pev(id, pev_viewmodel2, "models/v_mp5dual.mdl")

//tu dajemy ścieżkę do nowego modeli v_

                                }
                }
new iWeapon = read_data(2);
        new iEnt;

        static Float:fSpeedMultiplier = 0.7;

        if(iWeapon == CSW_MP5NAVY)
        {
                iEnt = fm_find_ent_by_owner(-1, "weapon_mp5navy", id)

                set_pdata_float( iEnt, 46, ( get_pdata_float(iEnt, 46, 4) * fSpeedMultiplier), 4 );
                set_pdata_float( iEnt, 47, ( get_pdata_float(iEnt, 47, 4) * fSpeedMultiplier), 4 );
        }



}
public CmdStart(id, uc_handle)
{
if(!is_user_alive(id) || !ma_klase[id])
return FMRES_IGNORED;

new buttons = get_uc(uc_handle, UC_Buttons);
new oldbuttons = pev(id, pev_oldbuttons);
new clip, ammo, weapon = get_user_weapon(id, clip, ammo);

if(max_clip[weapon] == -1 || !ammo)
return FMRES_IGNORED;

if((buttons & IN_RELOAD && !(oldbuttons & IN_RELOAD) && !(buttons & IN_ATTACK)) || !clip)
{


new Float:Now = get_gametime();
if((Now - Float:Last[id]) >= 2.8)
{


cs_set_user_bpammo(id, weapon, ammo-(max_clip[weapon]-clip));
new new_ammo = ((max_clip[weapon]+30) > ammo)? clip+ammo: (max_clip[weapon]+30)
set_user_clip(id, new_ammo);
       Last[id] = Now;
}
}

return FMRES_IGNORED;
}

stock set_user_clip(id, ammo)
{
new weaponname[32], weaponid = -1, weapon = get_user_weapon(id, _, _);
get_weaponname(weapon, weaponname, 31);
while ((weaponid = engfunc(EngFunc_FindEntityByString, weaponid, "classname", weaponname)) != 0)
if (pev(weaponid, pev_owner) == id) {
set_pdata_int(weaponid, 51, ammo, 4);
return weaponid;
}
return 0;
}

tu wersja praawie działająca, dodałem zwinne palce które daja 60 ammo, próbowałem także dodać opóźnienie, ale nie do końca działa :/
  • +
  • -
  • 0

24azdk0.jpg
b_350_20_692108_381007_FFFFFF_000000.png
 


#18 d0naciak

    Godlike

  • Power User

Reputacja: 1 029
Hero

  • Postów:2 414
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Kotlarka
Offline

Napisano 29.12.2011 19:05

ten kod od radima zamien ResetHUDx(id) na

public ResetHUDx(id)
{
new ent_broni = find_ent_by_owner(-1, "weapon_mp5navy", id)

if(!is_user_connected(id)) return;

if(!ma_klase[id]) return;

cs_set_weapon_ammo(ent_broni, 60) //ustaw broni 60 ammo

}


  • +
  • -
  • 0

#19 Eustachy8

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 116
Zaawansowany

  • Postów:304
  • Imię:Kuba
  • Lokalizacja:Buczacz
Offline

Napisano 29.12.2011 20:47

niestety, na począku ma 60-240
ale później dodaje tylko 30

jak przeładujemy gdy mamy >30 naboi to przeładuje do 30, a resztę wrzuci do plecaka :/

Użytkownik Eustachy8 edytował ten post 29.12.2011 21:01

  • +
  • -
  • 0

24azdk0.jpg
b_350_20_692108_381007_FFFFFF_000000.png
 





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

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