Witam.
Deneruje mnie to że jak nie wybierzemy klasy to możemy LVL wbijać i EXP'ić
Chciałbym to wyłączyć jest taka możliwość ?
Że jak Jest [Klasa : None albo Brak] To nie dostajemy EXP'a oraz LVL.
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.
|
Napisano 20.04.2013 09:47
Witam.
Deneruje mnie to że jak nie wybierzemy klasy to możemy LVL wbijać i EXP'ić
Chciałbym to wyłączyć jest taka możliwość ?
Że jak Jest [Klasa : None albo Brak] To nie dostajemy EXP'a oraz LVL.
Paczka map COD - http://cs-boster.pl/...ter-strike-1-6/
Paczka map AIM - http://cs-boster.pl/...ter-strike-1-6/
Counter Strike 1.6 Non Steam v23 - http://cs-boster.pl/...m-v23-download/
Counter Strike 1.6 Non Steam v32 - http://cs-boster.pl/...m-v32-download/
Counter Strike 1.6 Non Steam v52 - http://cs-boster.pl/...-non-steam-v52/
Napisano 20.04.2013 11:23
W Evencie Death i takeDamage sprawdzaj na początku czy klasa_gracza[id] == 0 jak tak dajesz returna aby nic nie robiło
Napisano 20.04.2013 13:27
heh patrzyłem ale nic nie mogę znaleźć co i jak ![]()
sam zerknij
tutaj masz Event
public Death(id)
{
new iKid = read_data(1);
new iVid = read_data(2);
if(iOdrodzenie[iVid] >= 1 || gClass[iVid] == Rambo)
{
new iPoints = iOdrodzenie[iVid];
if(gClass[iVid] == Rambo)
iPoints += 40;
if(random_num(1, 100) <= iPoints)
set_task(0.1, "Respawn", iVid);
}
if(!is_user_connected(iKid) || !is_user_connected(iVid) || SameTeam(iVid, iKid))
return 1;
new exp_add = get_pcvar_num(xp_kill);
if(isVip[iKid])
exp_add += get_pcvar_num(xp_vip);
if(gLvl[iVid] > gLvl[iKid])
exp_add += get_pcvar_num(xp_higher);
new bonus_doswiadczenie = 20
if(gClass[iVid] == Exper)
exp_add += bonus_doswiadczenie
gExp[iKid] += exp_add;
Check(iKid);
return 1;
}
a tutaj TakeDamager
public TakeDamage(vid, infl, idinflictor, kid, Float:damage, damagebits)
{
if(!kid || !is_user_alive(vid) || !is_user_alive(kid) || SameTeam(vid, kid))
return HAM_IGNORED;
new health = get_user_health(vid)
if(iObrazenia[kid] > 0.0)
damage += iObrazenia[kid];
if(get_user_weapon(kid) == CSW_KNIFE && damage > 20.0)
{
if((gClass[kid] == Ninja) && random_num(1, 2) == 1 || (gClass[kid] == Rambo) && random_num(1, 4) == 1 || (gClass[kid] == Nozownik) && random_num(1, 2) == 1 || (gClass[kid] == Smierc))
damage = float(health);
}
if((gClass[kid] == Ghost))
damage+=10;
SetHamParamFloat(4, damage);
return HAM_IGNORED;
}
Paczka map COD - http://cs-boster.pl/...ter-strike-1-6/
Paczka map AIM - http://cs-boster.pl/...ter-strike-1-6/
Counter Strike 1.6 Non Steam v23 - http://cs-boster.pl/...m-v23-download/
Counter Strike 1.6 Non Steam v32 - http://cs-boster.pl/...m-v32-download/
Counter Strike 1.6 Non Steam v52 - http://cs-boster.pl/...-non-steam-v52/
Napisano 20.04.2013 13:43
takeDamage dodaj na początku
if(klasa_gracza[kid] == 0) return PLUGIN_CONTINUE;
a w death i Damage (jesli zmienne są te same)
if(klasa_gracza[iVid] == 0) return PLUGIN_CONTINUE;
Napisano 20.04.2013 14:13
ok zadziałało ![]()
dzięki wielkie ziom tylko że jest jeszcze jeden problem ponieważ za przezycie rundy dostaje się EXP.
i jak nie ma się klasy to LVL i EXP leci.
próbowałem dodać to co w TakeDamage i w Event ale błąd wyskakuje.
public EventRoundEnd(id, kid)
{
if(gClass[kid] == 0)
return PLUGIN_CONTINUE;
for(new id=1; id<=MAX; id++)
{
if(is_user_alive(id) && !is_user_bot(id))
{
new XP = 0;
switch(get_user_team(id))
{
case 1: XP = 80;
case 2: XP = 20;
default: continue;
}
gExp[id] += XP;
Check(id);
ColorChat(id, GREEN, "^x01Dostales^x03 %d^x01 doswiadczenia za przezycie rundy!", XP);
}
}
}
a błędy.
Welcome to the AMX Mod X 1.8.1-300 Compiler. Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team DrExp.sma(850) : warning 209: function "EventRoundEnd" should return a value Header size: 2588 bytes Code size: 29344 bytes Data size: 24368 bytes Stack/heap size: 16384 bytes; max. usage is unknown, due to recursion Total requirements: 72684 bytes 1 Warning. Done.
a jest to linijka te 3 } } } i w tej trzeciej ![]()
Paczka map COD - http://cs-boster.pl/...ter-strike-1-6/
Paczka map AIM - http://cs-boster.pl/...ter-strike-1-6/
Counter Strike 1.6 Non Steam v23 - http://cs-boster.pl/...m-v23-download/
Counter Strike 1.6 Non Steam v32 - http://cs-boster.pl/...m-v32-download/
Counter Strike 1.6 Non Steam v52 - http://cs-boster.pl/...-non-steam-v52/
Napisano 20.04.2013 14:25
public EventRoundEnd(id, kid)
{
if(gClass[kid] == 0)
return PLUGIN_CONTINUE;
for(new id=1; id<=MAX; id++)
{
if(is_user_alive(id) && !is_user_bot(id))
{
new XP = 0;
switch(get_user_team(id))
{
case 1: XP = 80;
case 2: XP = 20;
default: continue;
}
gExp[id] += XP;
Check(id);
ColorChat(id, GREEN, "^x01Dostales^x03 %d^x01 doswiadczenia za przezycie rundy!", XP);
}
}
return PLUGIN_CONTINUE
}
dałeś return PLUGIN_CONTINUE, lecz na końcu go brakuje
Nowa wersja Tower Defense 0.2 Alpha | Inne Mody -> Nowości
Napisano 20.04.2013 15:54
@up
zadziałało dzięki
tylko że jest jeden problem.
teraz każdej klasie EXP i LVL nie lecą ![]()
a chcę żeby wszystkim leciał oprócz niby klasie "Brak"
Paczka map COD - http://cs-boster.pl/...ter-strike-1-6/
Paczka map AIM - http://cs-boster.pl/...ter-strike-1-6/
Counter Strike 1.6 Non Steam v23 - http://cs-boster.pl/...m-v23-download/
Counter Strike 1.6 Non Steam v32 - http://cs-boster.pl/...m-v32-download/
Counter Strike 1.6 Non Steam v52 - http://cs-boster.pl/...-non-steam-v52/
CoD Stary
Zmiana zapisu monet cod staryZmiana zapisu monet nie na klase ale jako ogół Napisany przez Jamdzam, 15.06.2019 |
|
|
|||
![]() |
CoD Stary
[ROZWIĄZANE] problem z klasą dostającą granat co 15 secNapisany przez Jamdzam, 10.06.2019 |
|
|
||
CoD Stary
Dodanie int, wytrzymałości do perku przedmiotuNapisany przez WirtualnyFanatyk, 26.02.2019 |
|
|
|||
CoD Stary
Zmiana huduCod nowy, cod stary, opisy klas HUD Napisany przez WirtualnyFanatyk, 20.10.2018 |
|
|
|||
CoD Stary
CoD Nowy vs CoD StaryNapisany przez Zaaxel, 21.11.2017 |
|
|
0 użytkowników, 0 gości, 0 anonimowych