hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.04.26. 22:08



Jelenlévő felhasználók

Jelenleg 330 felhasználó van jelen :: 0 regisztrált, 0 rejtett és 330 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: nincs regisztrált felhasználó az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 4 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Nem mindig ad skint
HozzászólásElküldve: 2023.01.02. 00:09 
Offline
Tud valamit
Avatar

Csatlakozott: 2020.12.01. 15:42
Hozzászólások: 112
Megköszönt másnak: 15 alkalommal
Megköszönték neki: 3 alkalommal
Sziasztok!
Adott egy mód, amelyben minden tökéletesnek látszik, kivéve egy valamit.
Mégpedig, amikor van megfelelő mennyiségű ládám és kulcsom is, és nyitok egy ládát, akkor nem mindig ad belőle skint.
|-> Tehát chaten sem jelzi, hogy nyitottam skint és nem is adja meg.
|->Viszont a nyitott láda és a kulcs is elhaszálódik.
Valaki megtudja mondani nekem, hogy mi a hiba benne?
Köszönöm!


Csatolmányok:
mod_sma.sma [59.11 KiB]
Letöltve 37 alkalommal.
Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Nem mindig ad skint
HozzászólásElküldve: 2023.01.02. 00:44 
Offline
Tud valamit
Avatar

Csatlakozott: 2020.05.14. 11:32
Hozzászólások: 142
Megköszönt másnak: 13 alkalommal
Megköszönték neki: 56 alkalommal
Valószínűleg hibát is logol a szerverkonzolba:
Kód:
public Talal(id)
{
   new Nev[32]; get_user_name(id, Nev, 31);
   new Float:Szam = random_float(0.01,100.0);
   new FegyverID = random_num(0, 82);
   new KesID = random_num(83, MAX);

   if(Szam <= KESDROP)
   {
      OsszesSkin[KesID][id]++;
      ColorChat(id, GREEN, "%s ^1Nyitottál egy ^4%s ^1skint.", C_Prefix, Fegyverek[KesID]);
      ColorChat(0, GREEN, "%s ^3%s ^1Nyitott egy ^4%s ^1skint!!", C_Prefix, Nev, Fegyverek[KesID]);
   }
   else
   {
      OsszesSkin[FegyverID][id]++;
      ColorChat(id, GREEN, "%s ^1Nyitottál egy ^4%s ^1skint", C_Prefix, Fegyverek[FegyverID]);
   }
}

ahol megadódnak a random értékek (pl. KesID) lehet hogy nagyobb értéket ad vissza mint a skinek száma, jelen esetben 83 és MAX (azaz 68) között keres számot, tehát nagy eséllyel hibát dob, mivel ha 68 vagy afölötti szám jön ki (tehát 100% esély) akkor túlcsordul a tömb.
Megoldás: Rendezd a skinek számát (kezdd a MAX értékének helyes megadásával ha eltérő), illetve a random számokat hogy egyezzenek a skinek számával.

_________________
[ExTasY] Furien Hero [CRAFT SYSTEM]
213.181.206.21:27140

[ExTasY] Super Deathmatch [SENTRY GUN]
213.181.206.27:27069

[ExTasY] Zombie Mutation [ZOMBIE NPC]
213.181.206.28:27057
Facebook
Discord

Kép

Ők köszönték meg DexoN nek ezt a hozzászólást: Zolika_36 (2023.01.02. 18:12)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Nem mindig ad skint
HozzászólásElküldve: 2023.01.02. 08:00 
Offline
Jómunkásember
Avatar

Csatlakozott: 2019.07.12. 13:47
Hozzászólások: 305
Megköszönt másnak: 15 alkalommal
Megköszönték neki: 48 alkalommal
Szerintem azt az sql elérést minél hamarabb szedd ki onnan.

_________________
Munkáim / Segítkezésem
Serial BanSystem v3
Serial BanSystem v4
HerBoy - Avatár MultiMod


Avatár: 37.221.209.130:27350
HerBoy: 37.221.209.130:27295


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Nem mindig ad skint
HozzászólásElküldve: 2023.01.02. 18:13 
Offline
Tud valamit
Avatar

Csatlakozott: 2020.12.01. 15:42
Hozzászólások: 112
Megköszönt másnak: 15 alkalommal
Megköszönték neki: 3 alkalommal
DexoN írta:
Valószínűleg hibát is logol a szerverkonzolba:
Kód:
public Talal(id)
{
   new Nev[32]; get_user_name(id, Nev, 31);
   new Float:Szam = random_float(0.01,100.0);
   new FegyverID = random_num(0, 82);
   new KesID = random_num(83, MAX);

   if(Szam <= KESDROP)
   {
      OsszesSkin[KesID][id]++;
      ColorChat(id, GREEN, "%s ^1Nyitottál egy ^4%s ^1skint.", C_Prefix, Fegyverek[KesID]);
      ColorChat(0, GREEN, "%s ^3%s ^1Nyitott egy ^4%s ^1skint!!", C_Prefix, Nev, Fegyverek[KesID]);
   }
   else
   {
      OsszesSkin[FegyverID][id]++;
      ColorChat(id, GREEN, "%s ^1Nyitottál egy ^4%s ^1skint", C_Prefix, Fegyverek[FegyverID]);
   }
}

ahol megadódnak a random értékek (pl. KesID) lehet hogy nagyobb értéket ad vissza mint a skinek száma, jelen esetben 83 és MAX (azaz 68) között keres számot, tehát nagy eséllyel hibát dob, mivel ha 68 vagy afölötti szám jön ki (tehát 100% esély) akkor túlcsordul a tömb.
Megoldás: Rendezd a skinek számát (kezdd a MAX értékének helyes megadásával ha eltérő), illetve a random számokat hogy egyezzenek a skinek számával.


Szia! Így működött, köszönöm szépen!

~Shediboii írta:
Szerintem azt az sql elérést minél hamarabb szedd ki onnan.


Direkt átírtam egy másikra :xicon_e_biggrin:


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 4 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 34 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole