MonetLoader 3.4.0 (Release Notes)

MonetLoader 3.4.0 (Release Notes)

The MonetLoader Team

Реализовано:

1. Все стандартные опкоды (до 0A4C включительно), включая новые от WarDrum (до 0A90 включительно, их нету на BH Wiki!).

2. Глобальные переменные: PLAYER_PED, PLAYER_HANDLE.

3. Работа с памятью (модуль memory, readMemory, writeMemory и т.д.), переменные с base-адресами основных библиотек (MONET_GTASA_BASE, MONET_SAMP_BASE).

4. Работа со скриптами (класс LuaScript, reloadScripts, thisScript, директивы), исключая заморозку. Система импортов и экспортов.

5. Работа с потоками (lua_thread, wait).

6. Система событий и следующие события: main, onSystemInitialized, onScriptLoad, onScriptTerminate, onExitScript, onD3DPresent, onSystemMessage, onScriptMessage,

(в версии для одиночной игры) onQuitGame,

  (в версии для клиента Arizona Mobile) onSendPacket, onSendRpc, onReceiveRpc, onReceivePacket.

7. Некоторые опкоды CLEO: getCharPointer, getCarPointer, getObjectPointer, storeClosestEntities, getTargetBlipCoordinates, getCarNumberOfGears, getCarCurrentGear, isCarSirenOn, switchCarEngine, printStyledString, printString, printStringNow, getCharPlayerIsTargeting, findAllRandomCharsInSphere, findAllRandomVehiclesInSphere, findAllRandomObjectsInSphere, doesFileExist, doesDirectoryExist, createDirectory, getCharPointerHandle, getVehiclePointerHandle, getObjectPointerHandle, getGxtText, setGxtEntry, clearGxtEntry, loadAudioStream, load3dAudioStream, loadAudioStreamFromMemory, load3dAudioStreamFromMemory, releaseAudioStream, getAudioStreamLength, getAudioStreamState, getAudioStreamVolume, setAudioStreamState, setAudioStreamVolume, setAudioStreamLooped, setPlay3dAudioStreamAtCoordinates, setPlay3dAudioStreamAtObject, setPlay3dAudioStreamAtChar, setPlay3dAudioStreamAtCar.

8. Некоторые опкоды SAMPFUNCS:

8.1. (в версии для клиента Arizona Mobile) Все опкоды для работы с BitStream, RPC и пакетами.

8.2. (в версии для клиента Arizona Mobile) Все опкоды, начинающиеся на sampSend.

8.3. (в версии для клиента Arizona Mobile) sampGetCharHandleBySampPlayerId, sampGetCarHandleBySampVehicleId, sampGetObjectHandleBySampId, sampGetPlayerIdByCharHandle, sampGetVehicleIdByCarHandle, sampGetObjectSampIdByHandle, sampStorePlayer<Тип>Data, sampIsPlayerConnected, sampGetPlayerHealth, sampGetPlayerArmor, sampGetPlayerPing, sampGetPlayerNickname, sampGetPlayerColor, sampGetPlayerAnimationId, sampIsPlayerPaused, sampGetPlayerSpecialAction, sampIsPlayerNpc, sampGetPlayerScore, sampGetMaxPlayerId, sampGetPlayerCount, sampGetCurrentServerName, sampGetCurrentServerAddress, sampCreate3dText, sampCreate3dTextEx, sampDestroy3dText, sampIs3dTextDefined, sampSet3dTextString, sampGet3dTextInfoById, sampSpawnPlayer, sampAddChatMessage, sampRequestClass, sampSetSpecialAction, sampRegisterChatCommand, sampUnregisterChatCommand, sampIsChatCommandDefined, sampSetClientCommandDescription, sampShowDialog, sampHasDialogRespond, sampIsDialogActive, sampGetCurrentDialogType, sampGetCurrentDialogId, sampGetDialogText, sampGetDialogCaption, sampSetDialogClientside, sampIsDialogClientside, sampIsLocalPlayerSpawned, sampProcessChatInput (частично).

8.4. convert3DCoordsToScreen, convert3DCoordsToScreenEx, convertScreenCoordsToWorld3D, getScreenResolution, convertGameScreenCoordsToWindowScreenCoords, convertWindowScreenCoordsToGameScreenCoords, processLineOfSight.

8.5. renderDrawLine, renderDrawBox, renderDrawBoxWithBorder, renderDrawPolygon, renderGetFontDrawTextLength, renderGetFontDrawHeight, renderCreateFont, renderReleaseFont, renderFontDrawText, renderLoadTextureFromFile, renderLoadTextureFromFileInMemory, renderReleaseTexture, renderGetTextureSize, renderDrawTexture.

9. Некоторые функции MoonLoader: getMoonloaderVersion, encodeJson, decodeJson, getGameDirectory, getWorkingDirectory, setClipboardText, getClipboardText, getAllChars, getAllVehicles, getAllObjects, setFreeGxtEntry, getFreeGxtKey, isGamePaused, isPauseMenuActive, isOpcodesAvailable, isCleoLoaded, isSampfuncsLoaded, isSampLoaded, getCharQuaternion, setCharQuaternion, convertMatrixToQuaternion, convertQuaternionToMatrix, lockPlayerControl, isPlayerControlLocked, setGameKeyState (0/1).

10. Новые события MonetLoader: bool onTouch(int type, int id, int x, int y) (return true - передать касание игре, return false - отменить касание), функции: string monet_cp1251_to_utf8(string text), string monet_utf8_to_cp1251(string text), bool monet_is_audiostream_available(), переменные: int MONET_VERSION, float MONET_DPI_SCALE, библиотеки: monetloader, monethook, jsoncfg, widgets, sa_renderfix.

11. Различные сторонние библиотеки.


Особенности MonetLoader:

1. memory.unprotect и memory.protect всегда возвращают 0.

2. Поток не может завершить себя через lua_thread.terminate(), используйте return.

3. В рендере поддерживается только шрифт Arial Bold, а также флаг обводки.

4. MonetLoader не принимает неустановленные числовые значения как "0", вы должны их явно установить (частая причина "expected number, received no value/nil").

5. Поддержка AudioStream является опциональной: если присутствует библиотека BASS ("libbass.so"), то тогда они будут работать, однако если она отсутствует, то тогда все функции AudioStream будут ничего не делать. Узнать, есть ли библиотека вы можете функцией monet_is_audiostream_available().

Report Page