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
BattleField2

Jak wyłączyć odznakę z broni szturmowych na 35_hp

BattleField2

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

#1 Buu071

    Nowy

  • Nowy

Reputacja: 0
Nowy

  • Postów:1
  • Lokalizacja:Polska
Offline

Napisano 23.08.2012 13:18

cześć
Jak w tytule . Jak wyłączyć odznake z broni szturmowych na 35_hp.
Żeby nie dawalo graczom 100 hp czy więcej w zależności od odznaki jaką mają ze szturmówek.
Alee chce żeby można było nabijać sobie odznake np z noża więc wyłączenie bf2 nie gra roli ...
proszę o szybkie odpowiedzi .
  • +
  • -
  • 0

#2 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 24.08.2012 21:56

Automatyczna wiadomość


Ten temat został przeniesiony z forum

AMX Mod XPytania

do

ModyInne modyPytania

#3 Misiaczek ;c

    /dev/null

  • Moderator

Reputacja: 1 678
Godlike

  • Postów:2 496
  • GG:
  • Steam:steam
  • Imię:Michał
  • Lokalizacja:Halemba
Offline

Napisano 24.08.2012 22:04

która wersja bf2?
  • +
  • -
  • 0

#4 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 24.08.2012 22:13

W funkcji
give_userweapon(id)
w pliku scripting/bf2/badgepowers.inl pobierz nazwę mapy
new szMapName[32];
get_mapname(szMapName, 31);
a następnie w warunku assaultlevel sprawdzającym, czy gracz ma odznakę z broni szturmowej sprawdź, czy prefix mapy to 35hp poprzez dodanie warunku
!containi(szMapName,"35hp_")
łącząc go z już istniejącym koniunkcją.

Przykładowo zamiast
public give_userweapon(id)
{
if ( !get_pcvar_num(gPcvarBadgesActive) || !get_pcvar_num(gPcvarBadgePowers) ) return;
if ( !is_user_alive(id) ) return;

new bool:givenitem = false;

new assaultlevel = g_PlayerBadges[id][BADGE_ASSAULT];
if ( assaultlevel )
{
new hp;
hp = 100 + (assaultlevel*10);

if ( get_user_health(id) < hp )
{
set_user_health(id, hp);

if ( pev(id, pev_max_health) < float(hp) )
{
set_pev(id, pev_max_health, float(hp));
}

givenitem = true;
}
}

// (...)
po edycji kod będzie wyglądał następująco:
public give_userweapon(id)
{
if ( !get_pcvar_num(gPcvarBadgesActive) || !get_pcvar_num(gPcvarBadgePowers) ) return;
if ( !is_user_alive(id) ) return;

new bool:givenitem = false;

new szMapName[32];
get_mapname(szMapName, 31);

new assaultlevel = g_PlayerBadges[id][BADGE_ASSAULT];
if ( assaultlevel && !containi(szMapName,"35hp_") )
{
new hp;
hp = 100 + (assaultlevel*10);

if ( get_user_health(id) < hp )
{
set_user_health(id, hp);

if ( pev(id, pev_max_health) < float(hp) )
{
set_pev(id, pev_max_health, float(hp));
}

givenitem = true;
}
}

//(...)
Oczywiście na końcu zapisz zmiany, rekompiluj plik, i wstrzyknij kod w pamięć (np. poprzez Orpheu, MemHack, Rage) albo zaktualizuj plik na serwerze i zmień mapę / zresetuj serwer.





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

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

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