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
CoD Nowy

Dodawanie Long Jump'a Do Klasy Lub Itemu

cod nowy

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

#1 VVirus

    Wszechwidzący

  • Zbanowany

Reputacja: 75
Zaawansowany

  • Postów:249
  • GG:
  • Steam:steam
  • Imię:Krzysztof
  • Lokalizacja:Warszawa
Offline

Napisano 03.12.2011 10:47

Siemanko. Dzisiaj mały Tutek, który został napisany z paru powodów, między innymi takim że nikt nie chciał mi pomóc z tym a także nie jestem samolubem i się podzielę :P
To tak zaczynajmy !
Dla Klasy
Stworzymy przykładową klasę o Nazwie Skoczek :)
Szkielet:
#include <amxmodx>
#include <amxmisc>
#include <codmod>

new const nazwa[] = "Skoczek";
new const opis[] = "Klasa Testowa Posiada LongJumpa Co x Sekund";
new const bronie = 0;
new const zdrowie = 0;
new const kondycja = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;

public plugin_init()
{
register_plugin(nazwa, "1.0", "Amxx.pl");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}


Na początku dodajemy includy:

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



Potem dodajemy:

new player_b_froglegs[33] = 1;
new ma_klase[33];


W Public Plugin Init Tworzymy Forward:

register_forward(FM_PlayerPreThink, "Prethink_froglegs");


Kolejno dodajemy 2 Publiki


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


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


I dajemy na Koniec SMA:

public Prethink_froglegs(id)
{
if(!ma_klase[id])
return PLUGIN_CONTINUE
if (get_user_button(id) & IN_DUCK)
{
if (player_b_froglegs[id] == 1)
{
player_b_froglegs[id] = floatround(halflife_time())
}
else
{
if (floatround(halflife_time())-player_b_froglegs[id] >= X) // Tutaj podajemy czas zamiast X
{
new Float:fl_iNewVelocity[3]
VelocityByAim(id, 1000, fl_iNewVelocity)
fl_iNewVelocity[2] = 210.0
entity_set_vector(id, EV_VEC_velocity, fl_iNewVelocity)
player_b_froglegs[id] = 1
}
}
}
else
{
player_b_froglegs[id] = 1
}
}


Gdzie X podajemy czas Np. 3.0 = co 3 sekundy :)


I Nasze SMA powinno wyglądać tak :

#include <amxmodx>
#include <amxmisc>
#include <codmod>

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

new const nazwa[] = "Skoczek";
new const opis[] = "Klasa Testowa Posiada LongJumpa Co x Sekund";
new const bronie = 0;
new const zdrowie = 0;
new const kondycja = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;



new player_b_froglegs[33];

new ma_klase[33];

public plugin_init()
{
register_plugin(nazwa, "1.0", "Amxx.pl");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);

register_forward(FM_PlayerPreThink, "Prethink_froglegs");
}


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

public Prethink_froglegs(id)
{
if(!ma_klase[id])
return PLUGIN_CONTINUE
if (get_user_button(id) & IN_DUCK)
{
//start holding down button here, set to halflife time
if (player_b_froglegs[id] == 1)
{
player_b_froglegs[id] = floatround(halflife_time())
}
else
{
if (floatround(halflife_time())-player_b_froglegs[id] >= 3.0)
{
new Float:fl_iNewVelocity[3]
VelocityByAim(id, 1000, fl_iNewVelocity)
fl_iNewVelocity[2] = 210.0
entity_set_vector(id, EV_VEC_velocity, fl_iNewVelocity)
player_b_froglegs[id] = 1
}
}
}
else
{
player_b_froglegs[id] = 1
}
}




Dla Itemu:

Stworzymy przykładowy item o nazwie Tajemnica Skoczka
Nasz szkielet :
#include <amxmodx>
#include <hamsandwich>
#include <codmod>
#include <fakemeta>
#include <fun>
#include <engine>
[new const perk_name[] = "Tajemnica Skoczka";
new const perk_desc[] = "Robisz Long Jumpy co 3 sekundy";
public plugin_init()
{
register_plugin(perk_name, "1.0", "Amxx.PL");

cod_register_perk(perk_name, perk_desc);

}



Kolejno dodajemy

new bool:ma_perk[33];


new player_b_froglegs[33];



Oraz :

public cod_perk_enabled(id)
{

ma_perk[id] = true;
}

public cod_perk_disabled(id)
{

ma_perk[id] = false;
}



Tworzymy Forwarda :

register_forward(FM_PlayerPreThink, "Prethink_froglegs");


i Dodajemy na koniec SMA:

public Prethink_froglegs(id)
{
if(!ma_perk[id])
return PLUGIN_CONTINUE
if (get_user_button(id) & IN_DUCK)
{
//start holding down button here, set to halflife time
if (player_b_froglegs[id] == 1)
{
player_b_froglegs[id] = floatround(halflife_time())
}
else
{
if (floatround(halflife_time())-player_b_froglegs[id] >= 2.0)
{
new Float:fl_iNewVelocity[3]
VelocityByAim(id, 1000, fl_iNewVelocity)
fl_iNewVelocity[2] = 210.0
entity_set_vector(id, EV_VEC_velocity, fl_iNewVelocity)
player_b_froglegs[id] = 1
}
}
}
else
{
player_b_froglegs[id] = 1
}
}



I wychodz nam coś takiego :

#include <amxmodx>
#include <hamsandwich>
#include <codmod>
#include <fakemeta>
#include <fun>
#include <engine>
new const perk_name[] = "Tajemnica Skoczka";
new const perk_desc[] = "Robisz Long Jumpy co 3 sekundy";
new bool:ma_perk[33];
new player_b_froglegs[33] = 1;
public plugin_init()
{
register_plugin(perk_name, "1.0", "Amxx.PL");

cod_register_perk(perk_name, perk_desc);
register_forward(FM_PlayerPreThink, "Prethink_froglegs");

}
public cod_perk_enabled(id)
{

ma_perk[id] = true;
}

public cod_perk_disabled(id)
{

ma_perk[id] = false;
}

public Prethink_froglegs(id)
{
if(!ma_perk[id])
return PLUGIN_CONTINUE
if (get_user_button(id) & IN_DUCK)
{
if (player_b_froglegs[id] == 1)
{
player_b_froglegs[id] = floatround(halflife_time())
}
else
{
if (floatround(halflife_time())-player_b_froglegs[id] >= 2.0)
{
new Float:fl_iNewVelocity[3]
VelocityByAim(id, 1000, fl_iNewVelocity)
fl_iNewVelocity[2] = 210.0
entity_set_vector(id, EV_VEC_velocity, fl_iNewVelocity)
player_b_froglegs[id] = 1
}
}
}
else
{
player_b_froglegs[id] = 1
}
}


Mam nadzieję że Komuś się przyda jak ktoś bd takiego czegoś szukał bo mi pomocy nie udzielono :P
Pozdrawiam !

Użytkownik Majster VVirus edytował ten post 03.12.2011 15:35

Serwery należące do mnie :) te i reszta na www.PlayBoard.eu oraz www.PlayBoard.pl

 

b_350_20_FFFFFF_FFFFFF_000000_000000.png b_350_20_FFFFFF_FFFFFF_000000_000000.pngb_350_20_FFFFFF_FFFFFF_000000_000000.png b_350_20_FFFFFF_FFFFFF_000000_000000.png


#2 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 03.12.2011 12:59

Nie
new player_b_froglegs[33] = 1;

tylko
new player_b_froglegs[33];

taki szczegół, do tego popraw kod sma przy perku, bo się rozwalił.
  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#3 VVirus

    Wszechwidzący

  • Autor tematu
  • Zbanowany

Reputacja: 75
Zaawansowany

  • Postów:249
  • GG:
  • Steam:steam
  • Imię:Krzysztof
  • Lokalizacja:Warszawa
Offline

Napisano 03.12.2011 15:35

Poprawione lecz samo się dodawały te fonty itp. nie wiem czemu a to :
new player_b_froglegs[33] = 1;


Mi działa :)
sebul (03.12.2011 17:10):
Ja nie napisałem, że nie będzie działać, ale po prostu to "= 1" nic nie daje i brzydko wygląda ;]

Serwery należące do mnie :) te i reszta na www.PlayBoard.eu oraz www.PlayBoard.pl

 

b_350_20_FFFFFF_FFFFFF_000000_000000.png b_350_20_FFFFFF_FFFFFF_000000_000000.pngb_350_20_FFFFFF_FFFFFF_000000_000000.png b_350_20_FFFFFF_FFFFFF_000000_000000.png


#4 Amazing

    Pomocny

  • Użytkownik

Reputacja: -3
Nowy

  • Postów:61
  • Imię:Sebastian
  • Lokalizacja:Ciechanów
Offline

Napisano 03.12.2011 16:09

A byś zrobił to na cod stary i też dał tutek ? :>
  • +
  • -
  • 0

#5 V3ko

    Guru

  • Power User

Reputacja: 83
Zaawansowany

  • Postów:746
  • Lokalizacja:Stopnica
Offline

Napisano 03.12.2011 17:07

Poradnik z diablomoda prawdopodobnie, bo tam właśnie dodaje się player_b_xxx ;d
  • +
  • -
  • 0

#6 VVirus

    Wszechwidzący

  • Autor tematu
  • Zbanowany

Reputacja: 75
Zaawansowany

  • Postów:249
  • GG:
  • Steam:steam
  • Imię:Krzysztof
  • Lokalizacja:Warszawa
Offline

Napisano 03.12.2011 17:52

To jest kod przerobiony z Diablo Moda :)

A do Starego COD'a wystarczy po kolei kopiować:P

Serwery należące do mnie :) te i reszta na www.PlayBoard.eu oraz www.PlayBoard.pl

 

b_350_20_FFFFFF_FFFFFF_000000_000000.png b_350_20_FFFFFF_FFFFFF_000000_000000.pngb_350_20_FFFFFF_FFFFFF_000000_000000.png b_350_20_FFFFFF_FFFFFF_000000_000000.png


#7 _nothing_

    NO ACTA !

  • Zbanowany

Reputacja: 134
Zaawansowany

  • Postów:377
  • GG:
  • Imię:Nothing
  • Lokalizacja:Poland
Offline

Napisano 03.12.2011 21:02

Majster Wirus jak to nikt Ci z tym nie pomógł ? Ja Ci pomogłem w tym temacie : http://amxx.pl/topic...792#entry328792

Chciałeś LongJumpa tyle, że ten nie działał podczas skakania :)

#8 Amazing

    Pomocny

  • Użytkownik

Reputacja: -3
Nowy

  • Postów:61
  • Imię:Sebastian
  • Lokalizacja:Ciechanów
Offline

Napisano 03.12.2011 22:04

"A do Starego COD'a wystarczy po kolei kopiować :P"

A możesz napisać gdzie co i jak ? bo ja zielony :>
  • +
  • -
  • 0

#9 VVirus

    Wszechwidzący

  • Autor tematu
  • Zbanowany

Reputacja: 75
Zaawansowany

  • Postów:249
  • GG:
  • Steam:steam
  • Imię:Krzysztof
  • Lokalizacja:Warszawa
Offline

Napisano 03.12.2011 23:43

Majster Wirus jak to nikt Ci z tym nie pomógł ? Ja Ci pomogłem w tym temacie : http://amxx.pl/topic...792#entry328792

Chciałeś LongJumpa tyle, że ten nie działał podczas skakania :)


Dałeś mi Moduł odrzutowy :P a To jest co innego :P

Serwery należące do mnie :) te i reszta na www.PlayBoard.eu oraz www.PlayBoard.pl

 

b_350_20_FFFFFF_FFFFFF_000000_000000.png b_350_20_FFFFFF_FFFFFF_000000_000000.pngb_350_20_FFFFFF_FFFFFF_000000_000000.png b_350_20_FFFFFF_FFFFFF_000000_000000.png


#10 mad

    Zaawansowany

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:78
  • GG:
  • Steam:steam
  • Imię:Kasper
  • Lokalizacja:Zabrze
Offline

Napisano 29.03.2012 16:56

if (get_user_button(id) & IN_DUCK)


A jak zrobić żeby był jump na "E"? bo nie potrafie zrobić :D
  • +
  • -
  • 0
Dołączona grafika
Dołączona grafika
Dołączona grafika

#11 A może sma?

    Godlike

  • Power User

Reputacja: 546
Wszechwiedzący

  • Postów:1 464
  • Steam:steam
  • Imię:Tomasz
  • Lokalizacja:Polska
Offline

Napisano 29.03.2012 19:50

Zamiast IN_DUCK wpisz IN_JUMP...
  • +
  • -
  • 0

#12 mad

    Zaawansowany

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:78
  • GG:
  • Steam:steam
  • Imię:Kasper
  • Lokalizacja:Zabrze
Offline

Napisano 29.03.2012 19:53

Ale to wtedy będzie na "SPACJI" nie? próbowałem też "IN_ALT1" ale to nie działa... ja konkretnie chciałem żeby było na "E" :(
  • +
  • -
  • 0
Dołączona grafika
Dołączona grafika
Dołączona grafika

#13 Sataris

    Pomocny

  • Zbanowany

Reputacja: -3
Nowy

  • Postów:64
  • Imię:Patryk
  • Lokalizacja:Rzeszów
Offline

Napisano 29.03.2012 20:11

Omg ale nasrane... Nie latwiej:

public cod_perk_used(id)
LUB
public cod_skill_used(id)
{
new flags = pev(id, pev_flags);

if(flags & FL_ONGROUND && get_gametime() > ostatni_skok[id]+4.0)
{
ostatni_skok[id] = get_gametime();
new Float:velocity[3];
velocity_by_aim(id, 666+cod_get_user_intelligence(id), velocity);
velocity[2] = random_float(265.0,285.0);
set_pev(id, pev_velocity, velocity);
}
}


?.......

#14 mad

    Zaawansowany

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:78
  • GG:
  • Steam:steam
  • Imię:Kasper
  • Lokalizacja:Zabrze
Offline

Napisano 29.03.2012 20:15

heh może i latwiej a reszta? np "new player_b_froglegs[33] = 1;" czy cos w tym stylu i może objaśnił byś na którym przycisku byłby wtedy jump (dla nie kumatych :D)
  • +
  • -
  • 0
Dołączona grafika
Dołączona grafika
Dołączona grafika

#15 A może sma?

    Godlike

  • Power User

Reputacja: 546
Wszechwiedzący

  • Postów:1 464
  • Steam:steam
  • Imię:Tomasz
  • Lokalizacja:Polska
Offline

Napisano 30.03.2012 12:39

Na "e" chcesz? To wpisz IN_USE...
  • +
  • -
  • 0

#16 mad

    Zaawansowany

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:78
  • GG:
  • Steam:steam
  • Imię:Kasper
  • Lokalizacja:Zabrze
Offline

Napisano 30.03.2012 15:36

też próbowałem ale musialem napisać w consoli "+use" ... i wtedy skakal ... a tak to nie chcal ani na "e" ani na "c" ... niewiem...
  • +
  • -
  • 0
Dołączona grafika
Dołączona grafika
Dołączona grafika

#17 SqNw0w

    Profesjonalista

  • Zbanowany

Reputacja: 2
Nowy

  • Postów:183
  • Lokalizacja:Gdansk
Offline

Napisano 01.04.2012 01:11

Podrzuccie gotowa klase :D

#18 mad

    Zaawansowany

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:78
  • GG:
  • Steam:steam
  • Imię:Kasper
  • Lokalizacja:Zabrze
Offline

Napisano 03.04.2012 10:06

Up@


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

new const nazwa[] = "Skoczek";
new const opis[] = "Klasa Testowa Posiada LongJumpa Co x Sekund";
new const bronie = 0;
new const zdrowie = 0;
new const kondycja = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;
new player_b_froglegs[33];
new ma_klase[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "Amxx.pl");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_forward(FM_PlayerPreThink, "Prethink_froglegs");
}

public cod_class_enabled(id)
{
ma_klase[id] = true;
}
public cod_class_disabled(id)
{
ma_klase[id] = false;
}
public Prethink_froglegs(id)
{
if(!ma_klase[id])
return PLUGIN_CONTINUE
if (get_user_button(id) & IN_DUCK)
{
//start holding down button here, set to halflife time
if (player_b_froglegs[id] == 1)
{
player_b_froglegs[id] = floatround(halflife_time())
}
else
{
if (floatround(halflife_time())-player_b_froglegs[id] >= 3.0)
{
new Float:fl_iNewVelocity[3]
VelocityByAim(id, 1000, fl_iNewVelocity)
fl_iNewVelocity[2] = 210.0
entity_set_vector(id, EV_VEC_velocity, fl_iNewVelocity)
player_b_froglegs[id] = 1
}
}
}
else
{
player_b_froglegs[id] = 1
}
}



proszę ... :facepalm2:

Użytkownik mad edytował ten post 03.04.2012 10:08

  • +
  • -
  • 1
Dołączona grafika
Dołączona grafika
Dołączona grafika

#19 sebacs2

    Wszechwidzący

  • Użytkownik

Reputacja: 6
Nowy

  • Postów:244
  • Lokalizacja:nie wiem
Offline

Napisano 29.06.2012 12:45

A jak zrobić żeby perk działał następująco. Gdy kucniemy na 3sekundy zrobimy long jump
  • +
  • -
  • 0

;P Zapraszam na sieć serwerów Cs-KoRea.pl ^D^

Serwer [FFA+BF2] 31.186.83.100:27041 Serwer [Cod] 31.186.83.100:27046


#20 Joketerbe

    Nowy

  • Zbanowany

Reputacja: 0
Nowy

  • Postów:7
  • Imię:Mati
  • Lokalizacja:Przewłoki
Offline

Napisano 02.04.2014 11:16

Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team
 
codclass_mnich.sma(4) : error 031: unknown directive
codclass_mnich.sma(32) : warning 217: loose indentation
codclass_mnich.sma(41) : warning 217: loose indentation
codclass_mnich.sma(132) : warning 209: function "cod_class_skill_used" should return a value
codclass_mnich.sma(158) : error 017: undefined symbol "get_user_button"
codclass_mnich.sma(163) : error 017: undefined symbol "halflife_time"
codclass_mnich.sma(167) : error 017: undefined symbol "halflife_time"
codclass_mnich.sma(170) : error 017: undefined symbol "VelocityByAim"
codclass_mnich.sma(172) : error 017: undefined symbol "entity_set_vector"
codclass_mnich.sma(172) : warning 215: expression has no effect
codclass_mnich.sma(172) : error 001: expected token: ";", but found ")"
codclass_mnich.sma(172) : error 029: invalid expression, assumed zero
codclass_mnich.sma(172) : fatal error 107: too many error messages on one line
 
Compilation aborted.
9 Errors.
 






Również z jednym lub większą ilością słów kluczowych: cod nowy

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

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