Pro gyalog - gyalog-portál script

fixes.inc - hibajavítások SA-MP


leírás
Hibajavítások SA-MP, írta a közösség.

bevezetés
SA-MP - ez egy teszt program által írt egy kis csapat a szabadidejében, talán hiba van (mint bármely más szoftver). Néhányan közülük már ismert hosszú ideig, de alacsonyabb prioritási miatt csekély hatással, mások egyszerűen nem lehet rögzíteni sokáig. Sok ilyen hibák megoldásokat lehet végrehajtani Pawn (és ez lehet egyszerűbb, mint azok végrehajtását a forráskód SA-MP). E forgatókönyv, hogy összehozza a lehető legtöbb egy könyvtár foltok, könnyen kezelhető mindenki számára.

használata
Ahhoz, hogy használni ezt a szkriptet, csak kapcsolja csatlakoztatása után a standard SA-MP funkciók, hanem más könyvtárak:

#include
// Minden felülbírálja az alapértelmezett állandók itt kell lennie
// # undef MAX_PLAYERS
// # define MAX_PLAYERS 10
#include
#include

Ahhoz, hogy kapcsolja le a korrekciós bármilyen okból, tegye a következőket:

#define FIX_ 0

Például, hogy tiltsa le az összes file.inc gyorsjavítás, ha mindig helyesen ellenőrizni a fájl leíró, tegye a következőket:

#include
#define FIX_file_inc 0
#include
#include

Minden tapasz nevek olyan szavak, és mindegyiket, azok leírásával az alábbiak.

Ha a szerver csak egy script (azaz nem scripting filter), akkor a következő beállításokat, hogy javítsa fixes.inc kód:

#include
#define FIXES_Single 1
#include
#include

beállítások
Van néhány lehetőség, hogy javítsa teljesítményét a szkript. Zadevaynite ezeket a karaktereket „1”, mielőtt csatlakoztatja fixes.inc (törölje vagy állítsa 0-ra ki lehet kapcsolni):
  • FIXES_Single - Csak egy futó script (nincs filterscript), egyszerűsíti a kódot.
  • FIXES_SilentKick - Amikor egy játékos számára tiltott Kika divat / átvitel, ne küldje el az üzenetet.
  • FIXES_Debug - További információk a szerver konzolon.

Néhány javítás amelyek alapesetben, de azokat be:

#define FIX_GetPlayerDialog 1 // Egy teljesen új funkció, ez nem az a célja a forgatókönyvet.
#define FIX_random 1 // Nem hiszem, hogy nem fut egy negatív szám egy tévedés.
#define FIX_file_inc 1 // Ez magában foglalja az összes "fwhatever" fix (javításokat fájlok).
#define FIX_HideMenuForPlayer_2 1 // elrejteni bizonyos menü, nem csak a jelenlegi.


kiegészítés
A fájl elég jól dokumentált, a kijavított hibák listája a felső részben. Ha tudni más hiba, vagy ha bármilyen megoldás, jó lenne, ha őket ez a téma (összhangban használják a szerkezet). A könyvtár is szüksége van egy alapos vizsgálat, hogy megtalálják a hibákat korrekciókat.

Íme néhány további könyvtárak, korrekcióját célzó egyéb súlyos problémák:

  • Fixes2 - Y_Less korrekció "SetTimer", "SetTimerEx" és mások.
  • SQLitei - Slice helyes és javítása számos funkcióját SQLite
  • Timer Fix - Szelet korrekció, hogy a „SetTimer” és „SetTimerEx” pontosabb.

Ez a teszt által írt szoftvert egy kis csapat a szabadidejében, talán hiba van (mint bármely más szoftver). Ez a szoftver célja, hogy javítsa a hibákat, de okozhat nekik, de ott is lehet hiba.

A legvalószínűbb oka a hiba, ha letiltja bizonyos korrekciókat. Néhány javítás amelyek összefüggnek egymással és meg kell dolgozni, még ha járó korrekcióra tiltva, nem minden kombinációja teszteltük. Van szó, lehetséges kombinációk milliói - ha megtalálja azt, amelyik nem fordul le, vagy nem működik, kérjük ossza meg velünk.

A fordítás
Normál angol tudás van lefordítva sietve, így a szövegben előfordulhatnak hibák. meg tudja mondani ebben a témában ilyen hibákkal.

letöltés
  • A legfrissebb verzió mindig megtalálható GitHub.

Írta Glant

És van néhány ötlete, hogyan pofiksit? Magam is próbáltam írni egy mankó, de most nem működik.
Itt van, amit én:
- GivePlayerWeapon vevőműködés, SetPlayerAremdWeapon, ResetPlayerWeapons, és folyamatosan weaponid változóit, és ha egyáltalán ResetPlayerWeapons vissza.
- Lehallgatás GetPlayerWeapon funkciót, és visszatér a változó értékét

Írta Glant

De minden attól függ, hogy egy kis dolog, mint írtam a Githabe, 3 féle fegyver (UZI, MP-5 és a TEC-9) vannak a kezében „automatikus”, amikor a beszállás a kocsiba. „Automatikusan” idézőjelbe, mert ez nem mindig van így, ez ritkán fordul elő.

Tudod, hogy a változás fegyverek automatikus leszálló mindig, akkor nincs probléma.
Több ne feledkezzünk meg az ejtőernyőt, amennyire emlékszem, ő visszahúzott leszállás a közlekedésben.

Fix az GetPlayerWeapon (inkább mondani, átalakítva ő még fix csak SetPlayerArmedWeapon az autóban:

Rögzítésére SetPlayerArmedWeapon ebben elfogó fukntsii weaponid rögzítik a változók csak akkor, ha a játékos a közlekedésben. És amikor a játékos elhagyja a csúszás -1. Ugyanez az érték alapértelmezés szerint, ha csatlakoztatja a lejátszót. Ennél figyelni peprehvatchik GetPlayerWeapon: ha a változó költségek -1, majd visszatér az eredeti funkciója, vagy az értéke a változó.
Saját fix tapad ugyanazt az elvet, és én csak hozzá:

Stock FIXES_GivePlayerWeapon (playerid. weaponid. lőszer)
új vid = GetPlayerVehicleID;

if (vid)
// kód egy másik rögzítés

#if FIX_GetPlayerWeapon
#if FIXES_Single
FIXES_gsPlayerWeapon # 91; playerid # 93; = Weaponid;
#else
SetPVarInt (playerid FIXES_pvarPlayerWeapon weaponid ..);
#endif
#endif
>
>


// Új Interceptor
#if meghatározott _ALS_ResetPlayerWeapons
#Hiba _ALS_ResetPlayerWeapons definiált
#endif
natív BAD_ResetPlayerWeapons (playerid) = ResetPlayerWeapons;

Stock FIXES_ResetPlayerWeapons (playerid)
<
if (IsPlayerInAnyVehicle (playerid))
<
#if FIXES_Single
FIXES_gsPlayerWeapon # 91; playerid # 93; = 0;
#else
SetPVarInt (playerid FIXES_pvarPlayerWeapon 0 ..);
#endif
>

visszatérő ResetPlayerWeapons (playerid);
>
#define _ALS_ResetPlayerWeapons
#define ResetPlayerWeapons FIXES_ResetPlayerWeapons

nyilvános OnPlayerStateChange (playerid. newstate. oldstate)
// kód egy másik rögzítés

// ====================
// BEGIN: GetPlayerWeapon
// ====================
#if FIX_GetPlayerWeapon
if (newstate == PLAYER_STATE_DRIVER)
új fegyvert. lőszer;
// Micro SMG / Uzi, MP5, TEC-9 vannak 4. nyílásba
GetPlayerWeaponData (playerid 4. fegyver lőszer ..);
if (fegyver)
SetPlayerArmedWeapon (playerid fegyver.);

#if meghatározott FIXES_Single
FIXES_gsPlayerWeapon # 91; playerid # 93; = Fegyver;
#else
SetPVarInt (playerid FIXES_pvarPlayerWeapon weaponid ..);
#endif
>
>
#endif
// ====================
// END: GetPlayerWeapon
// ====================
>


P.S egy ejtőernyős nincs szükség a zavarásért, mert eltávolítani csak amikor egy játékos szándékosan leül, és ez idő alatt az ököl (id 0) maga tárolja. És amikor öntudatlan ejtőernyő „marad a kezében.”

Kapcsolódó cikkek