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] Dodanie tarczy dla TT podczas zabawy


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

#1 Obelix

    Profesjonalista

  • Użytkownik

Reputacja: 18
Początkujący

  • Postów:177
Offline

Napisano 23.03.2020 11:59

Witam, 
Mam problem aby dodać tarczę dla TT gdy się włączy zabawa, 

KOD: 

for(new i = 1; i <= MaxClients; ++i) {
if(!isAlive(i) || isTeam(i) != 1) continue;
 
if(isTeam(i) == 1) UsunBronie(i);
if(isTeam(i) == 1) set_user_health(i, 200);
if(isTeam(i) == 1) GiveItem(i, "weapon_deagle", 9999);
if(isTeam(i) == 1) GiveItem(i, "weapon_shield");
}
BŁĄD podczas kompilacji: 
error 088: number of arguments does not match definition

Błąd dotyczy tylko tarczy, gdy usunę tarczę wszystko działa, jeżeli ktoś pomoże daję +++ !! :)
 

 


Użytkownik Obelix edytował ten post 23.03.2020 12:00

  • +
  • -
  • 0

#2 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 23.03.2020 13:15

wklej tutaj funkcje GiveItem, przypuszczam, żę po prostu musisz tam podać argument (nie wiem jak jest w tym jb, ale moze to byc pewnie ile ammo ma dodac)

możesz skorzystac tez z give_item


  • +
  • -
  • 0

#3 Obelix

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 18
Początkujący

  • Postów:177
Offline

Napisano 23.03.2020 13:50

wklej tutaj funkcje GiveItem, przypuszczam, żę po prostu musisz tam podać argument (nie wiem jak jest w tym jb, ale moze to byc pewnie ile ammo ma dodac)

możesz skorzystac tez z give_item

Funkcja GiveItem 

stock GiveItem(id, item[], ammo) {
giveItem(id, item);
cs_set_user_bpammo(id, get_weaponid(item), ammo);
}
////
Zrobiłem tak: 
if(isTeam(i) == 1) GiveItem(i, "weapon_shield", 1);

Wszystko się kompiluje ładnie, lecz na serwerze 1 więzień dostaje tarcze, reszta ginie i się cała zabawa crashuje

///// 

Gdy zrobiłęm tak: 

give_item(id, "weapon_shield");
 
Błędy podczas kompilacji: 
 error 017: undefined symbol "id"
 warning 215: expression has no effect
 error 001: expected token: ";", but found ")"
 error 029: invalid expression, assumed zero
 fatal error 107: too many error messages on one line
 
 

 

 


Użytkownik Obelix edytował ten post 23.03.2020 13:52

  • +
  • -
  • 0

#4 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 23.03.2020 14:09

ehhh, poczytaj na spokojnie moze i sie poucz zamiast bezmyslnie kopiowac.

 

 

GiveItem nie zadziała bo tam ustawia sie tez ammo dla broni - wiec wywali gdy dasz tarcze, logiczne.

 

give_item wymaga w pierwszym argumencie identyfikatora gracza, czyli numerku od 1 do 32 włącznie.

 

jak myslisz co robi ta pętla;

for(new i = 1; i <= MaxClients; ++i)

ona leci po graczach (czyli po identyfikatorach) od 1 do maxclients

Czyli twoim identyfikatorem w tym momencie nie jest id, lecz i


  • +
  • -
  • 0




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

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