forked from ElunaLuaEngine/Eluna
-
Notifications
You must be signed in to change notification settings - Fork 148
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
129 additions
and
118 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,137 +1,148 @@ | ||
### [![Eluna](src/LuaEngine/docs/Eluna.png)](https://github.com/ElunaLuaEngine/Eluna) | ||
<div align="center"> | ||
|
||
## About | ||
# [![Eluna](src/LuaEngine/docs/Eluna.png)](https://github.com/ElunaLuaEngine/Eluna) | ||
|
||
Eluna Lua Engine © is a lua engine embedded to World of Warcraft emulators. Eluna supports MaNGOS, CMaNGOS, TrinityCore and AzerothCore. | ||
We are currently working hard to make Eluna better from inside and outside. | ||
*Unleash the power of Lua scripting in your AzerothCore server* | ||
|
||
If you are having trouble with installation or scripts, please feel free to open an issue. | ||
For documentation and reference see [Eluna API (AC version)](https://www.azerothcore.org/pages/eluna/index.html) and [Lua reference manual](http://www.lua.org/manual/5.2/). | ||
[![Discord](https://img.shields.io/badge/Discord-Join%20Us-7289DA?style=for-the-badge&logo=discord&logoColor=white)](https://discord.com/invite/ZKSVREE7) | ||
[![Lua](https://img.shields.io/badge/Lua-5.2-2C2D72?style=for-the-badge&logo=lua&logoColor=white)](http://www.lua.org/manual/5.2/) | ||
[![AzerothCore](https://img.shields.io/badge/AzerothCore-Integrated-darkgreen?style=for-the-badge)](http://www.azerothcore.org/) | ||
|
||
--- | ||
</div> | ||
|
||
## Community | ||
> [!NOTE] | ||
> mod-eluna © is a powerful Lua scripting engine embedded into the AzerothCore emulator. We are committed to continuously improving mod-Eluna for both developers and server administrators. | ||
You can join the official Eluna Discord server, where you'll be able to find resources, releases and support provided by the community: | ||
<a href="https://discord.gg/bjkCVWqqfX"> | ||
<img src="https://img.shields.io/badge/discord-join-7289DA.svg?logo=discord&longCache=true&style=flat" /> | ||
</a> | ||
<details> | ||
<summary>🎯 Table of Contents</summary> | ||
|
||
The official Azerothcore Discord server offers a channel dedicated to lua development as well: | ||
<a href="https://discord.gg/gkt4y2x"> | ||
<img src="https://img.shields.io/badge/discord-join-7289DA.svg?logo=discord&longCache=true&style=flat" /> | ||
</a> | ||
- [Acknowledgements](#-acknowledgements) | ||
- [Support & Resources](#-support--resources) | ||
- [Community](#-community) | ||
- [Installation](#-installation) | ||
- [Documentation](#-documentation) | ||
- [Useful Links](#-useful-links) | ||
- [Community Additions](#%EF%B8%8F-community-additions) | ||
- [Contributing](#-contributing) | ||
</details> | ||
|
||
# ![logo](https://raw.githubusercontent.com/azerothcore/azerothcore.github.io/master/images/logo-github.png) mod-eluna for AzerothCore | ||
- Latest build status with azerothcore: [![Build Status](https://github.com/azerothcore/mod-eluna/workflows/core-build/badge.svg?branch=master&event=push)](https://github.com/azerothcore/mod-eluna) | ||
## 🌟 Acknowledgements | ||
<div align="center"> | ||
|
||
[english](README.md) | [中文说明](README_CN.md) | [Español](README_ES.md) | ||
***Built on the shoulders of giants*** | ||
</div> | ||
|
||
An [Eluna](https://github.com/ElunaLuaEngine/Eluna) module for AzerothCore. | ||
mod-eluna is a fork of the original [Eluna](https://github.com/ElunaLuaEngine/Eluna) project. We extend our heartfelt gratitude to the Eluna TC team for their work. | ||
|
||
> **Explore More:** | ||
> - [Original Wiki](https://github.com/ElunaLuaEngine/Eluna) | ||
> - [Eluna Discord](https://discord.gg/bjkCVWqqfX) | ||
## How to install: | ||
## 💡 Support & Resources | ||
|
||
### 1) Download the sources | ||
### Need Help? | ||
Feel free to open an issue for installation or scripting problems. | ||
|
||
You can get the sources using git. | ||
### Quick Links | ||
- 📚 [mod-eluna API](https://www.azerothcore.org/eluna/) | ||
- 📖 [Lua Reference](http://www.lua.org/manual/5.2/) | ||
|
||
#### download with git | ||
## 🌐 Community | ||
|
||
1. open a terminal inside your `azerothcore-wotlk` folder | ||
2. go inside the **modules** folder: `cd modules` | ||
3. download the module sources using: | ||
Join our thriving community: | ||
|
||
<div align="center"> | ||
|
||
[![AzerothCore Discord](https://img.shields.io/badge/AzerothCore_Discord-Join_Us-7289DA?style=for-the-badge&logo=discord&logoColor=white)](https://discord.com/invite/ZKSVREE7) | ||
|
||
</div> | ||
|
||
## ⚡ Installation | ||
|
||
### Prerequisites | ||
- AzerothCore installation | ||
- Git | ||
- CMake | ||
|
||
### Quick Install | ||
```bash | ||
# Navigate to modules directory | ||
cd modules | ||
|
||
# Clone the repository | ||
git clone https://github.com/azerothcore/mod-eluna.git | ||
|
||
# Build using CMake | ||
# You can choose your Lua version during cmake configuration using: | ||
# -DLUA_VERSION={luajit, lua52, lua53, lua54} | ||
# Example: | ||
cmake ../ -DLUA_VERSION=luajit | ||
|
||
# If no Lua version is specified, Lua 5.2 will be used by default | ||
|
||
# Follow your normal build process | ||
``` | ||
|
||
## 📚 Eluna Documentation | ||
- [Getting Started](https://github.com/ElunaLuaEngine/Eluna/blob/master/docs/USAGE.md) | ||
- [Eluna Features](https://github.com/ElunaLuaEngine/Eluna/blob/master/docs/IMPL_DETAILS.md) | ||
- [Hooks Documentation](https://github.com/azerothcore/mod-eluna/blob/master/src/LuaEngine/Hooks.h) | ||
|
||
## 🔗 Useful Links | ||
- [🎮 AzerothCore](http://www.azerothcore.org/) | ||
- [💻 Lua.org](http://www.lua.org/) | ||
- [📜 License](https://github.com/azerothcore/mod-eluna/blob/master/LICENSE) | ||
|
||
## 🛠️ Community Additions | ||
|
||
> [!TIP] | ||
> Our community has contributed numerous valuable features to enhance mod-eluna's capabilities. | ||
<details> | ||
<summary>Click to expand feature list</summary> | ||
|
||
### Player Events | ||
```lua | ||
PLAYER_EVENT_ON_PET_ADDED_TO_WORLD | ||
PLAYER_EVENT_ON_LEARN_SPELL | ||
PLAYER_EVENT_ON_UPDATE_AREA | ||
``` | ||
git clone https://github.com/azerothcore/mod-eluna.git mod-eluna | ||
|
||
### Unit Methods | ||
```lua | ||
Unit:ModifyThreatPct() | ||
Unit:GetAttackers() | ||
Unit:SetSpeedRate(unitMoveType, speed) | ||
``` | ||
|
||
### 2) Build | ||
|
||
You need to run the cmake again and rebuild the project. | ||
|
||
Eluna API for AC: | ||
[https://www.azerothcore.org/pages/eluna/index.html](https://www.azerothcore.org/pages/eluna/index.html) | ||
|
||
|
||
## Documentation | ||
|
||
* [Getting started](https://github.com/ElunaLuaEngine/Eluna/blob/master/docs/USAGE.md) | ||
* [Eluna features](https://github.com/ElunaLuaEngine/Eluna/blob/master/docs/IMPL_DETAILS.md) | ||
* [Function documentation (AC version)](https://www.azerothcore.org/pages/eluna/index.html) | ||
* [Hook documentation](https://github.com/ElunaLuaEngine/Eluna/blob/master/Hooks.h) | ||
* [Lua reference manual](http://www.lua.org/manual/5.2/) | ||
* [Forum - support, releases, guides](https://www.getmangos.eu/forums/forum/119-eluna-central/) | ||
* [Example scripts](https://github.com/ElunaLuaEngine/Scripts) | ||
* [Contributing](https://github.com/ElunaLuaEngine/Eluna/blob/master/docs/CONTRIBUTING.md) | ||
|
||
|
||
## Links | ||
|
||
* [MaNGOS](http://getmangos.eu/) | ||
* [cMaNGOS](http://cmangos.net/) | ||
* [TrinityCore](http://www.trinitycore.org/) | ||
* [AzerothCore](http://www.azerothcore.org/) | ||
* [Lua.org](http://www.lua.org/) | ||
* [License](https://github.com/ElunaLuaEngine/Eluna/blob/master/docs/LICENSE.md) | ||
|
||
|
||
## Additions from Eluna/master | ||
|
||
### Player | ||
- Added `RegisterPlayerEvent` `43` (`PLAYER_EVENT_ON_PET_ADDED_TO_WORLD`) fires for pets and summoned creatures: https://github.com/azerothcore/mod-eluna/pull/3 | ||
- Added `RegisterPlayerEvent` `44` (`PLAYER_EVENT_ON_LEARN_SPELL`): https://github.com/azerothcore/mod-eluna/pull/46 | ||
- Added `RegisterPlayerEvent` `45` (`PLAYER_ON_ACHIEVEMENT_COMPLETE`): https://github.com/azerothcore/mod-eluna/pull/47 | ||
- Added `RegisterPlayerEvent` `46` (`PLAYER_EVENT_ON_FFAPVP_CHANGE`): https://github.com/azerothcore/mod-eluna/pull/63 | ||
- Added `RegisterPlayerEvent` `47` (`PLAYER_EVENT_ON_UPDATE_AREA`): https://github.com/azerothcore/mod-eluna/pull/65 | ||
- Added `RegisterPlayerEvent` `48` (`PLAYER_EVENT_ON_CAN_INIT_TRADE`): https://github.com/azerothcore/mod-eluna/pull/83 | ||
- Added `RegisterPlayerEvent` `49` (`PLAYER_EVENT_ON_CAN_SEND_MAIL`): https://github.com/azerothcore/mod-eluna/pull/85 | ||
- Added `RegisterPlayerEvent` `50` (`PLAYER_EVENT_ON_CAN_JOIN_LFG`): https://github.com/azerothcore/mod-eluna/pull/86 | ||
- Added `RegisterPlayerEvent` `51` (`PLAYER_EVENT_ON_QUEST_REWARD_ITEM`): https://github.com/azerothcore/mod-eluna/pull/88 | ||
- Added `RegisterPlayerEvent` `52` (`PLAYER_EVENT_ON_CREATE_ITEM`): https://github.com/azerothcore/mod-eluna/pull/88 | ||
- Added `RegisterPlayerEvent` `53` (`PLAYER_EVENT_ON_STORE_NEW_ITEM`): https://github.com/azerothcore/mod-eluna/pull/88 | ||
- Added `RegisterPlayerEvent` `54` (`PLAYER_EVENT_ON_COMPLETE_QUEST`): https://github.com/azerothcore/mod-eluna/pull/90 | ||
- Added `RegisterPlayerEvent` `55` (`PLAYER_EVENT_ON_CAN_GROUP_INVITE`): https://github.com/azerothcore/mod-eluna/pull/100 | ||
- Added `RegisterPlayerEvent` `56` (`PLAYER_EVENT_ON_GROUP_ROLL_REWARD_ITEM`): https://github.com/azerothcore/mod-eluna/pull/119 | ||
- Added `RegisterPlayerEvent` `57` (`PLAYER_EVENT_ON_BG_DESERTION`): https://github.com/azerothcore/mod-eluna/pull/146 | ||
- Added `Player:GetMailCount()`: https://github.com/azerothcore/mod-eluna/pull/76 | ||
- Added `Player:GetXP()`: https://github.com/azerothcore/mod-eluna/pull/77 | ||
- Added `Player:GetAchievementCriteriaProgress()`: https://github.com/azerothcore/mod-eluna/pull/78 | ||
- Added vendor entry as argument to `Player:SendListInventory(object, vendorentry)`: https://github.com/azerothcore/mod-eluna/pull/48 | ||
- Added `Player:GetPlayerSettingValue()` and `Player:UpdatePlayerSetting()`: https://github.com/azerothcore/mod-eluna/pull/125 | ||
- Added `Player:GetTrader()`: https://github.com/azerothcore/mod-eluna/pull/126 | ||
- Added `Player:CanCompleteRepeatableQuest(questId)`: https://github.com/azerothcore/mod-eluna/pull/141 | ||
- Added `Player:CanRewardQuest(questId)`: https://github.com/azerothcore/mod-eluna/pull/141 | ||
- Added `Player:SetGlyph(glyphId, slotIndex)`: https://github.com/azerothcore/mod-eluna/pull/152 | ||
|
||
### Group | ||
- Added `Group:GetGroupType()`: https://github.com/azerothcore/mod-eluna/pull/82 | ||
- Added `Group:SetMemberFlag()`: https://github.com/azerothcore/mod-eluna/pull/102 | ||
|
||
### Unit | ||
- Added `Unit:ModifyThreatPct()`: https://github.com/azerothcore/mod-eluna/pull/25 | ||
- Added `Unit:GetAttackers()`: https://github.com/azerothcore/mod-eluna/pull/116 | ||
- Added `Unit:GetThreatList()`: https://github.com/azerothcore/mod-eluna/pull/117 | ||
- Added `Unit:GetUnitFlags()`: https://github.com/azerothcore/mod-eluna/pull/137 | ||
- Added `Unit:GetUnitFlagsTwo()`: https://github.com/azerothcore/mod-eluna/pull/137 | ||
- Added `Unit:SetUnitFlags(flags)`: https://github.com/azerothcore/mod-eluna/pull/137 | ||
- Added `Unit:SetUnitFlagsTwo(flags)`: https://github.com/azerothcore/mod-eluna/pull/137 | ||
- Added `Unit:SetSpeedRate(unitMoveType, speed)`: https://github.com/azerothcore/mod-eluna/pull/155 | ||
- Added `Unit:SetSpeedRate()`: https://github.com/azerothcore/mod-eluna/pull/155 | ||
|
||
### GameObject | ||
- Added `GameObject:AddLoot()` to add loot at runtime to an **empty** container: https://github.com/azerothcore/mod-eluna/pull/52 | ||
|
||
### Object | ||
- Added `Object:IsPlayer()`: https://github.com/azerothcore/mod-eluna/pull/42 | ||
|
||
### Item | ||
- Added `Item:GetItemTemplate()`: https://github.com/azerothcore/mod-eluna/pull/84 | ||
|
||
### Misc | ||
- Added `HttpRequest()`: https://github.com/azerothcore/mod-eluna/pull/2 | ||
- Added `GetItemTemplate(itemEntry)`: https://github.com/azerothcore/mod-eluna/pull/84 | ||
- Added `ChatHandler` methods: https://github.com/azerothcore/mod-eluna/pull/23 | ||
- Added `ItemTemplate` methods: https://github.com/azerothcore/mod-eluna/pull/84 | ||
- Added `Roll` methods: https://github.com/azerothcore/mod-eluna/pull/119 | ||
- Added logging with `ELUNA_LOG_INFO` for `RunCommand()`: https://github.com/azerothcore/mod-eluna/pull/75 | ||
- Added `GetOwnerHalaa` and `SetOwnerHalaa`: https://github.com/azerothcore/mod-eluna/pull/79 | ||
- Added `WorldDBQueryAsync`, `CharDBQueryAsync` and `AuthDBQueryAsync`: https://github.com/azerothcore/mod-eluna/pull/113 | ||
### Miscellaneous Features | ||
```lua | ||
HttpRequest() | ||
WorldDBQueryAsync | ||
CharDBQueryAsync | ||
AuthDBQueryAsync | ||
``` | ||
</details> | ||
|
||
> For a complete list of community contributions, check our [Community Updates](https://github.com/azerothcore/mod-eluna/blob/master/COMMUNITY_UPDATES). | ||
## 🤝 Contributing | ||
|
||
We welcome contributions! Here's how you can help: | ||
|
||
```mermaid | ||
graph LR | ||
A[Fork Repository] --> B[Create Branch] | ||
B --> C[Make Changes] | ||
C --> D[Submit PR] | ||
D --> E[Review Process] | ||
``` | ||
|
||
<div align="center"> | ||
|
||
--- | ||
<sub>Made with ❤️ by the Eluna Community</sub> | ||
|
||
[⬆ Back to Top](#) | ||
</div> |