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 ilości naboi w magazynku


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

#1 mierzwi

    Banned

  • Zbanowany

Reputacja: 235
Wszechwidzący

  • Postów:651
  • Lokalizacja:Polska
Offline

Napisano 29.01.2012 21:54

Kod wycięty i sklejony w całość z pluginu Soccdoodcss, trochę zedytowany przeze mnie, w którym można zmienić maksymalną ilość naboi w magazynku danej broni.
Aby zmienić naboje znajdź funkcję max_clip i zmień liczbę przypisaną do danej broni:
max_clip(WeapID) /* Tu zwiekszamy naboje */
{
	new MaxClip = 0;
	
	switch(WeapID)
	{
		case CSW_P228 : MaxClip = 13;
			
		case CSW_SCOUT : MaxClip = 10;
			
		case CSW_HEGRENADE : MaxClip = 1;
			
		case CSW_XM1014 : MaxClip = 7;
			
		case CSW_C4 : MaxClip = 1;
			
		case CSW_MAC10 : MaxClip = 30;
			
		case CSW_AUG : MaxClip = 30;
			
		case CSW_SMOKEGRENADE : MaxClip = 1;
			
		case CSW_ELITE : MaxClip = 30;
			
		case CSW_FIVESEVEN : MaxClip = 20;
			
		case CSW_UMP45 : MaxClip = 25;
			
		case CSW_SG550 : MaxClip = 30;
			
		case CSW_GALI : MaxClip = 35;
			
		case CSW_FAMAS : MaxClip = 25;
			
		case CSW_USP : MaxClip = 12;
			
		case CSW_GLOCK18 : MaxClip = 20;
			
		case CSW_AWP : MaxClip = 10;
			
		case CSW_MP5NAVY : MaxClip = 30;
			
		case CSW_M249 : MaxClip = 100;
			
		case CSW_M3 : MaxClip = 8;
			
		case CSW_M4A1 : MaxClip = 30;
			
		case CSW_TMP : MaxClip = 30;
			
		case CSW_G3SG1 : MaxClip = 20;
			
		case CSW_FLASHBANG : MaxClip = 2;
			
		case CSW_DEAGLE	: MaxClip = 7;
			
		case CSW_SG552 : MaxClip = 30;
			
		case CSW_AK47 : MaxClip = 30;
			
		case CSW_P90 : MaxClip = 50;
			
		default: return PLUGIN_HANDLED;
	}
	return MaxClip;
}

Plugin w spoilerze :)
Spoiler

Użytkownik maslo edytował ten post 31.01.2012 22:13

jeśli masz fejsa i chcesz mi pomóc to wejdź tutaj: Zaproś kumpla by lubił nasz sklep | Facebook

na pewno jakoś C się odwdzięczę!


#2 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 29.01.2012 22:16

A nie lepiej zrobić to za pomocą tablicy?
  • +
  • -
  • 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 mierzwi

    Banned

  • Autor tematu
  • Zbanowany

Reputacja: 235
Wszechwidzący

  • Postów:651
  • Lokalizacja:Polska
Offline

Napisano 29.01.2012 22:22

A nie lepiej zrobić to za pomocą tablicy?

Ja to tylko edytowałem i wywaliłem niepotrzebny shit :>

jeśli masz fejsa i chcesz mi pomóc to wejdź tutaj: Zaproś kumpla by lubił nasz sklep | Facebook

na pewno jakoś C się odwdzięczę!


#4 goferek

    Zaawansowany

  • Zbanowany

Reputacja: 0
Nowy

  • Postów:84
  • Imię:Adam
  • Lokalizacja:Bytom
Offline

Napisano 29.01.2012 22:24

A dało by rade to przerobić tak aby dawało np: +10 ammo w magazynku dla vipa od określonej flagi ?

#5 mierzwi

    Banned

  • Autor tematu
  • Zbanowany

Reputacja: 235
Wszechwidzący

  • Postów:651
  • Lokalizacja:Polska
Offline

Napisano 29.01.2012 22:51

A dało by rade to przerobić tak aby dawało np: +10 ammo w magazynku dla vipa od określonej flagi ?

Zapewne :)

jeśli masz fejsa i chcesz mi pomóc to wejdź tutaj: Zaproś kumpla by lubił nasz sklep | Facebook

na pewno jakoś C się odwdzięczę!


#6 ogieR8

    Wszechmogący

  • Power User

Reputacja: 203
Profesjonalista

  • Postów:641
  • Imię:Mariusz
  • Lokalizacja:Ruda Śląska
Offline

Napisano 31.01.2012 15:45

Ej, mam bardzo ważne pytanie i pewnie odpowiedź przyda się nie tylko mi..
Jak użyję pętli takiej jak w nowej rundzie z ID, to zadziała to odpowiednio ? Bo chcę zrobić coś na takiej zasadzie :


case CSW_FAMAS: MaxClip = 25+quest_bonus_ammo[level_famas[id]];


new const quest_bonus_ammo[] = { 0, 1, 3, 5 }


Może działać, ale to jeszcze nie znaczy, że kod będzie dobry i w 100% sprawny.

Mi coś nie działa plugin.. Może ktoś go testował ? Sprawdzał ? Rano sprawdzę sam plugin, bo dziś go wsadziłem do mojego modka, żeby dodać skill broni, ale nie odpala ; /

Niestety.. Sam plugin bez wyciągania jego kodu też nie działa, na dodatek wyłączyłem wszystkie inne pluginy jakby wadziły.. Bez oabw, moduł odblokowany, więc po prostu plugin nie działa. A szkoda.. wielka. Zależy mi na dodatkowym ammo, zmniejszeniu czasu między przeładowaniem w AWP, jest na forum tutaj jedna funkcja do 'tego', ale tam przeładowuje szybciej po kliknięciu R, ale nie między pojedynczymi pociskami. Chciałbym, żeby z malutką wartością AWP działało prawie jak Auto-Lama, no ale cóż.. sam tego nie zrobie. I prosiłbym o naprawienie tego ;)

Użytkownik ogieR- edytował ten post 31.01.2012 00:23

  • +
  • -
  • 1

Irytuje mnie nieczytelny kod, jeśli oczekujesz ode mnie pomocy - zmień to !


#7 mierzwi

    Banned

  • Autor tematu
  • Zbanowany

Reputacja: 235
Wszechwidzący

  • Postów:651
  • Lokalizacja:Polska
Offline

Napisano 31.01.2012 20:15

Nie wiem mi to działa, z ciekawości zaraz sam jeszcze raz sprawdzę ^^

@ EDIT: Tak, jednak był błąd w stocku którego nie zauważyłem haha :< Już zedytowałem pierwszy post i poprawiłem kod, + dla kolegi wyżej za czujność :D

Użytkownik maslo edytował ten post 31.01.2012 20:41

jeśli masz fejsa i chcesz mi pomóc to wejdź tutaj: Zaproś kumpla by lubił nasz sklep | Facebook

na pewno jakoś C się odwdzięczę!


#8 ogieR8

    Wszechmogący

  • Power User

Reputacja: 203
Profesjonalista

  • Postów:641
  • Imię:Mariusz
  • Lokalizacja:Ruda Śląska
Offline

Napisano 31.01.2012 21:48

No byłbym bardzo wdzięczny :)

A mam takie pytanko.. Bo są rejestrowane eventy, ale są do nich flagi, i tu jest kłopot. Ja mam np w moim modzie :

register_event("DeathMsg","DeathMsg","ade")  


A Twój plugin ma :

register_event("DeathMsg", "evDeath", "a");


Jak widać flagi nie są te same, czyli nie wypada z publica evDeath do publica DeathMsg kopiować kod, gdyż flagi w przeniesionym kodzie będą inne niż te jakie Ty zaproponowałeś w swoim. Ale z drugiej strony mam rozterkęElo , czy nie zostawić tych dwóch eventów i w 2 zarejestrowane sposoby. Może troszkę chaotycznie, ale nie umiem tego opisać, a zawsze myślę jak to rozegrać..

1. Kopiować kod z 1 eventu do drugiego, ale za to flagi mogą być nie zgodne dla prawidłowości pluginu przeniesionego
2. Zarejestrować 2 eventy, ale tu minusem jest 'dubel'.

Z góry dzięki za wyjaśnienie tego i naprawienie pluginu.

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-


Dzięki za plusa, ale dalej jest błąd przez Twoją nie uwagę ^^


#include
#include
#include


Zamień na:

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>


hehe.

Użytkownik ogieR- edytował ten post 31.01.2012 21:48

  • +
  • -
  • 0

Irytuje mnie nieczytelny kod, jeśli oczekujesz ode mnie pomocy - zmień to !


#9 mierzwi

    Banned

  • Autor tematu
  • Zbanowany

Reputacja: 235
Wszechwidzący

  • Postów:651
  • Lokalizacja:Polska
Offline

Napisano 31.01.2012 22:17

Wyjaśnienie po ang: http://www.amxmodx.o...event&go=search
Na polski przekładając te literki to są flagi, każda flaga odpowiada jakiejś czynności, mały spis (nie wiem czy dobre tłumaczenie, anglik ze mnie nie jest):
"a" - Global Event // event na cały plug (?)
"b" - Event sent to a single target // wysyłany tylko do 1 osoby
"c" - Send only once when repeated to other players // wysyłane jest raz kiedy powtarza się dla innych graczy (?)
"d" - Only if sent to a dead player // działa jeśli wiadomość jest wysyłana do martwego gracza
"e" - Only if sent to an alive player // działa jeśli wiadomość jest wysyłana do żywego gracza

jeśli masz fejsa i chcesz mi pomóc to wejdź tutaj: Zaproś kumpla by lubił nasz sklep | Facebook

na pewno jakoś C się odwdzięczę!


#10 ogieR8

    Wszechmogący

  • Power User

Reputacja: 203
Profesjonalista

  • Postów:641
  • Imię:Mariusz
  • Lokalizacja:Ruda Śląska
Offline

Napisano 01.02.2012 02:43

Co może być nie tak ? :|


max_clip(WeapID) { /* Tu zwiekszamy naboje */
new MaxClip = 0;
new plus[33];

for (new i=0; i < 33; i++) {
plus[i]=quest_ammo_bonus[level_rifle[i]];

switch(WeapID) {
case CSW_P228 : MaxClip = 13;
case CSW_SCOUT : MaxClip = 10;
case CSW_HEGRENADE : MaxClip = 1;
case CSW_XM1014 : MaxClip = 7;
case CSW_C4 : MaxClip = 1;
case CSW_MAC10 : MaxClip = 30;
case CSW_AUG : MaxClip = 30+plus[i];
case CSW_SMOKEGRENADE : MaxClip = 1;
case CSW_ELITE : MaxClip = 30;
case CSW_FIVESEVEN : MaxClip = 20;
case CSW_UMP45 : MaxClip = 25;
case CSW_SG550 : MaxClip = 30;
case CSW_GALI : MaxClip = 35+plus[i];
case CSW_FAMAS : MaxClip = 25+plus[i];
case CSW_USP : MaxClip = 12;
case CSW_GLOCK18 : MaxClip = 20;
case CSW_AWP : MaxClip = 10;
case CSW_MP5NAVY : MaxClip = 30;
case CSW_M249 : MaxClip = 100;
case CSW_M3 : MaxClip = 8;
case CSW_M4A1 : MaxClip = 30+plus[i];
case CSW_TMP : MaxClip = 30;
case CSW_G3SG1 : MaxClip = 20;
case CSW_FLASHBANG : MaxClip = 2;
case CSW_DEAGLE : MaxClip = 7;
case CSW_SG552 : MaxClip = 30+plus[i];
case CSW_AK47 : MaxClip = 30+plus[i];
case CSW_P90 : MaxClip = 50;

default: return PLUGIN_HANDLED;
}
}
return MaxClip;
}


new const quest_ammo_bonus[] = { 0, 5, 10, 15 }


?

Kompilować to się kompiluje, ale niestety kompilacja =/= poprawnie działający plugin.

Użytkownik ogieR- edytował ten post 01.02.2012 02:44

  • +
  • -
  • 0

Irytuje mnie nieczytelny kod, jeśli oczekujesz ode mnie pomocy - zmień to !


#11 Shelvi

    Zaawansowany

  • Użytkownik

Reputacja: 6
Nowy

  • Postów:97
  • GG:
  • Steam:steam
  • Imię:Grzegorz
  • Lokalizacja:2.800km od PL
Offline

Napisano 01.02.2012 08:06

Tylko co ci nie działa? Zapewne poustawiałeś daną ilość naboi i pewnie nie hula? Po prostu wystrzel 1 nabój i przeładuj np miałeś max 30 ustawiłeś na 100, więc gdy zaczniesz grę masz 30 wystrzelisz 1 nabój przeładujesz i masz 100 chociaż powinno od samego początku pokazywać 100

max_clip(WeapID) /* Tu zwiekszamy naboje */
{
	    new MaxClip = 0;
	   
	    switch(WeapID)
	    {
			    case CSW_P228 : MaxClip = 23;
			    case CSW_SCOUT : MaxClip = 60;
			    .....
			    default: return PLUGIN_HANDLED;
	    }
	    return MaxClip;
}
Mi się wydaje że wystarczy zmienić zawartość i będziesz miał więcej lecz działa to tak jak pisałem, że zmieni się po przeładowaniu
  • +
  • -
  • 1

#12 Stachuu :D ??

    Wszechobecny

  • Użytkownik

Reputacja: 237
Wszechwidzący

  • Postów:476
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Karsznice
Offline

Napisano 01.02.2012 08:08

to niech ustawia poprzez ham_ (wyciąganie broni) i powinno od razu ustawiac dobra wartosc .
  • +
  • -
  • 1

#13 mierzwi

    Banned

  • Autor tematu
  • Zbanowany

Reputacja: 235
Wszechwidzący

  • Postów:651
  • Lokalizacja:Polska
Offline

Napisano 01.02.2012 11:02

Co może być nie tak ? :|


max_clip(WeapID) { /* Tu zwiekszamy naboje */
new MaxClip = 0;
new plus[33];

for (new i=0; i < 33; i++) {
plus[i]=quest_ammo_bonus[level_rifle[i]];

switch(WeapID) {
case CSW_P228 : MaxClip = 13;
case CSW_SCOUT : MaxClip = 10;
case CSW_HEGRENADE : MaxClip = 1;
case CSW_XM1014 : MaxClip = 7;
case CSW_C4 : MaxClip = 1;
case CSW_MAC10 : MaxClip = 30;
case CSW_AUG : MaxClip = 30+plus[i];
case CSW_SMOKEGRENADE : MaxClip = 1;
case CSW_ELITE : MaxClip = 30;
case CSW_FIVESEVEN : MaxClip = 20;
case CSW_UMP45 : MaxClip = 25;
case CSW_SG550 : MaxClip = 30;
case CSW_GALI : MaxClip = 35+plus[i];
case CSW_FAMAS : MaxClip = 25+plus[i];
case CSW_USP : MaxClip = 12;
case CSW_GLOCK18 : MaxClip = 20;
case CSW_AWP : MaxClip = 10;
case CSW_MP5NAVY : MaxClip = 30;
case CSW_M249 : MaxClip = 100;
case CSW_M3 : MaxClip = 8;
case CSW_M4A1 : MaxClip = 30+plus[i];
case CSW_TMP : MaxClip = 30;
case CSW_G3SG1 : MaxClip = 20;
case CSW_FLASHBANG : MaxClip = 2;
case CSW_DEAGLE : MaxClip = 7;
case CSW_SG552 : MaxClip = 30+plus[i];
case CSW_AK47 : MaxClip = 30+plus[i];
case CSW_P90 : MaxClip = 50;

default: return PLUGIN_HANDLED;
}
}
return MaxClip;
}


new const quest_ammo_bonus[] = { 0, 5, 10, 15 }


?

Kompilować to się kompiluje, ale niestety kompilacja =/= poprawnie działający plugin.

W ogóle twój pomysł jest do bani xD Zrób tak żeby max_clip miało id czyli max_clip(id, WeapID) i tam dodaj na podstawie zmiennej :D

jeśli masz fejsa i chcesz mi pomóc to wejdź tutaj: Zaproś kumpla by lubił nasz sklep | Facebook

na pewno jakoś C się odwdzięczę!


#14 ogieR8

    Wszechmogący

  • Power User

Reputacja: 203
Profesjonalista

  • Postów:641
  • Imię:Mariusz
  • Lokalizacja:Ruda Śląska
Offline

Napisano 01.02.2012 14:07

Jestem dziś trochę zakręcony i nie ogarnięty, mógłbyś mi to zrobić z tego kodu co tutaj podałem ? :D A ja zmykam bo nie ogarniam z rana na kacu, i wielkie dzięki jakbyś to jednak zrobił, + oczywiście będzie i Ci wyżej zaraz też dostaną. A co do segos.. wiem o tym, ale to w ogóle nie łapie większej ilości w magazynku.

Dobraa, mam. Nie wiem czego nie ogarnąłem. No akurat pomógł mi tylko maslo, wiec dostanie znowu +, ale za chęci Wam też dam, no niech będzie ;PPP

Użytkownik ogieR- edytował ten post 01.02.2012 14:08

  • +
  • -
  • 0

Irytuje mnie nieczytelny kod, jeśli oczekujesz ode mnie pomocy - zmień to !


#15 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 16.07.2012 19:59

Wiem, że autor jest zbanowany i trochę odkopię temat, ale w tej funkcji jest zwracane 1, dla broni, np. o id = 40, bo
#define PLUGIN_HANDLED		1	/* stop other plugins */

Jak już ktoś koniecznie chce używać tej funkcji, to powinna ona wyglądać tak
Spoiler

  • +
  • -
  • 2

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


#16 Pan PrO

    Wszechpomocny

  • Użytkownik

Reputacja: 99
Zaawansowany

  • Postów:388
  • Lokalizacja:PC
Offline

Napisano 24.11.2012 14:21

Jest bug bo gdy mam full ammo to da się przeładowywać i ustawia standardowe ammo
  • +
  • -
  • 0




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

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