new version commit
This commit is contained in:
72
modules/mod-dynamic-xp/.github/ISSUE_TEMPLATE/bug_report.yml
vendored
Normal file
72
modules/mod-dynamic-xp/.github/ISSUE_TEMPLATE/bug_report.yml
vendored
Normal file
@@ -0,0 +1,72 @@
|
||||
name: Bug report
|
||||
description: Create a bug report to help us improve.
|
||||
title: "Bug: "
|
||||
body:
|
||||
- type: textarea
|
||||
id: current
|
||||
attributes:
|
||||
label: Current Behaviour
|
||||
description: |
|
||||
Description of the problem or issue here.
|
||||
Include entries of affected creatures / items / quests / spells etc.
|
||||
If this is a crash, post the crashlog (upload to https://gist.github.com/) and include the link here.
|
||||
Never upload files! Use GIST for text and YouTube for videos!
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: expected
|
||||
attributes:
|
||||
label: Expected Behaviour
|
||||
description: |
|
||||
Tell us what should happen instead.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: reproduce
|
||||
attributes:
|
||||
label: Steps to reproduce the problem
|
||||
description: |
|
||||
What does someone else need to do to encounter the same bug?
|
||||
placeholder: |
|
||||
1. Step 1
|
||||
2. Step 2
|
||||
3. Step 3
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: extra
|
||||
attributes:
|
||||
label: Extra Notes
|
||||
description: |
|
||||
Do you have any extra notes that can help solve the issue that does not fit any other field?
|
||||
placeholder: |
|
||||
None
|
||||
validations:
|
||||
required: false
|
||||
- type: textarea
|
||||
id: commit
|
||||
attributes:
|
||||
label: AC rev. hash/commit
|
||||
description: |
|
||||
Copy the result of the `.server debug` command (if you need to run it from the client get a prat addon)
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
id: os
|
||||
attributes:
|
||||
label: Operating system
|
||||
description: |
|
||||
The Operating System the Server is running on.
|
||||
i.e. Windows 11 x64, Debian 10 x64, macOS 12, Ubuntu 20.04
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: custom
|
||||
attributes:
|
||||
label: Custom changes or Modules
|
||||
description: |
|
||||
List which custom changes or modules you have applied, i.e. Eluna module, etc.
|
||||
placeholder: |
|
||||
None
|
||||
validations:
|
||||
required: false
|
||||
33
modules/mod-dynamic-xp/.github/ISSUE_TEMPLATE/feature_request.yml
vendored
Normal file
33
modules/mod-dynamic-xp/.github/ISSUE_TEMPLATE/feature_request.yml
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
name: Feature request
|
||||
description: Suggest an idea for this project
|
||||
title: "Feature: "
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thank you for taking your time to fill out a feature request. Remember to fill out all fields including the title above.
|
||||
An issue that is not properly filled out will be closed.
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: Describe your feature request or suggestion in detail
|
||||
description: |
|
||||
A clear and concise description of what you want to happen.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: solution
|
||||
attributes:
|
||||
label: Describe a possible solution to your feature or suggestion in detail
|
||||
description: |
|
||||
A clear and concise description of any alternative solutions or features you've considered.
|
||||
validations:
|
||||
required: false
|
||||
- type: textarea
|
||||
id: additional
|
||||
attributes:
|
||||
label: Additional context
|
||||
description: |
|
||||
Add any other context or screenshots about the feature request here.
|
||||
validations:
|
||||
required: false
|
||||
28
modules/mod-dynamic-xp/.github/README.md
vendored
Normal file
28
modules/mod-dynamic-xp/.github/README.md
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
#  AzerothCore
|
||||
|
||||
# Dynamic XP
|
||||
|
||||
- Latest build status with azerothcore:
|
||||
|
||||
[](https://github.com/azerothcore/mod-dynamic-xp)
|
||||
|
||||
## Description
|
||||
|
||||
Set xp per level range e.g in dynamicxp.conf.
|
||||
|
||||
## Features
|
||||
|
||||
- Dynamic.XP.Rate.1-9 = 1.0
|
||||
- Dynamic.XP.Rate.10-19 = 2.0
|
||||
- Dynamic.XP.Rate.20-29 = 3.0
|
||||
- Dynamic.XP.Rate.30-39 = 4.0
|
||||
- Dynamic.XP.Rate.40-49 = 5.0
|
||||
- Dynamic.XP.Rate.50-59 = 6.0
|
||||
- Dynamic.XP.Rate.60-69 = 7.0
|
||||
- Dynamic.XP.Rate.70-79 = 8.0
|
||||
|
||||
## Credits
|
||||
|
||||
- [Micrah/Milestorme: Script/Module Creator](https://github.com/milestorme).
|
||||
- [Poszer: Script Support](https://github.com/poszer)
|
||||
- [Conan513: Original Script from AshmaneCore](https://github.com/conan513).
|
||||
12
modules/mod-dynamic-xp/.github/workflows/core-build.yml
vendored
Normal file
12
modules/mod-dynamic-xp/.github/workflows/core-build.yml
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
name: core-build
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
uses: azerothcore/reusable-workflows/.github/workflows/core_build_modules.yml@main
|
||||
with:
|
||||
module_repo: ${{ github.event.repository.name }}
|
||||
48
modules/mod-dynamic-xp/.gitignore
vendored
Normal file
48
modules/mod-dynamic-xp/.gitignore
vendored
Normal file
@@ -0,0 +1,48 @@
|
||||
!.gitignore
|
||||
|
||||
#
|
||||
#Generic
|
||||
#
|
||||
|
||||
.directory
|
||||
.mailmap
|
||||
*.orig
|
||||
*.rej
|
||||
*~
|
||||
.hg/
|
||||
*.kdev*
|
||||
.DS_Store
|
||||
CMakeLists.txt.user
|
||||
*.bak
|
||||
*.patch
|
||||
*.diff
|
||||
*.REMOTE.*
|
||||
*.BACKUP.*
|
||||
*.BASE.*
|
||||
*.LOCAL.*
|
||||
|
||||
#
|
||||
# IDE & other softwares
|
||||
#
|
||||
/.settings/
|
||||
/.externalToolBuilders/*
|
||||
# exclude in all levels
|
||||
nbproject/
|
||||
.sync.ffs_db
|
||||
*.kate-swp
|
||||
|
||||
#
|
||||
# Eclipse
|
||||
#
|
||||
*.pydevproject
|
||||
.metadata
|
||||
.gradle
|
||||
tmp/
|
||||
*.tmp
|
||||
*.swp
|
||||
*~.nib
|
||||
local.properties
|
||||
.settings/
|
||||
.loadpath
|
||||
.project
|
||||
.cproject
|
||||
21
modules/mod-dynamic-xp/LICENSE
Normal file
21
modules/mod-dynamic-xp/LICENSE
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2019 Micrah
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
22
modules/mod-dynamic-xp/README.md
Normal file
22
modules/mod-dynamic-xp/README.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# Dynamic XP
|
||||
- Latest build status with azerothcore: [](https://travis-ci.com/milestorme/mod-dynamic-xp)
|
||||
|
||||
## Description
|
||||
Set xp per level range e.g in dynamicxp.conf.
|
||||
|
||||
## Features
|
||||
|
||||
* Dynamic.XP.Rate.1-9 = 1.0
|
||||
* Dynamic.XP.Rate.10-19 = 2.0
|
||||
* Dynamic.XP.Rate.20-29 = 3.0
|
||||
* Dynamic.XP.Rate.30-39 = 4.0
|
||||
* Dynamic.XP.Rate.40-49 = 5.0
|
||||
* Dynamic.XP.Rate.50-59 = 6.0
|
||||
* Dynamic.XP.Rate.60-69 = 7.0
|
||||
* Dynamic.XP.Rate.70-79 = 8.0
|
||||
|
||||
|
||||
## Credits
|
||||
* [Micrah/Milestorme: Script/Module Creator](https://github.com/milestorme).
|
||||
* [Poszer: Script Support](https://github.com/poszer)
|
||||
* [Conan513: Original Script from AshmaneCore](https://github.com/conan513).
|
||||
30
modules/mod-dynamic-xp/conf/dynamicxp.conf.dist
Normal file
30
modules/mod-dynamic-xp/conf/dynamicxp.conf.dist
Normal file
@@ -0,0 +1,30 @@
|
||||
[worldserver]
|
||||
|
||||
################################################################################################################
|
||||
# Dynamic.XP.Rate
|
||||
# Description: You can setup the personal XP rate for different level ranges.
|
||||
#
|
||||
# Dynamic.XP.Rate.Announce: 1 (Enable) Default
|
||||
# 0 (Disable)
|
||||
#
|
||||
# Dynamic.XP.Rate: 1 (Enable) Default
|
||||
# 0 (Disable)
|
||||
#
|
||||
# Dynamic.XP.Rate.X-X: 1+ (Set a custom XP rate on that level range)
|
||||
# 0 (Reset custom XP rate to default on that level range)
|
||||
#
|
||||
|
||||
Dynamic.XP.Rate.Announce = 1
|
||||
|
||||
Dynamic.XP.Rate = 1
|
||||
|
||||
Dynamic.XP.Rate.1-9 = 1
|
||||
Dynamic.XP.Rate.10-19 = 2
|
||||
Dynamic.XP.Rate.20-29 = 3
|
||||
Dynamic.XP.Rate.30-39 = 4
|
||||
Dynamic.XP.Rate.40-49 = 5
|
||||
Dynamic.XP.Rate.50-59 = 6
|
||||
Dynamic.XP.Rate.60-69 = 7
|
||||
Dynamic.XP.Rate.70-79 = 8
|
||||
|
||||
##################################################################################################################
|
||||
0
modules/mod-dynamic-xp/include.sh
Normal file
0
modules/mod-dynamic-xp/include.sh
Normal file
25
modules/mod-dynamic-xp/pull_request_template.md
Normal file
25
modules/mod-dynamic-xp/pull_request_template.md
Normal file
@@ -0,0 +1,25 @@
|
||||
<!-- First of all, THANK YOU for your contribution. -->
|
||||
|
||||
## Changes Proposed:
|
||||
-
|
||||
-
|
||||
|
||||
## Issues Addressed:
|
||||
<!-- If your fix has a relating issue, link it below -->
|
||||
- Closes
|
||||
|
||||
## SOURCE:
|
||||
<!-- If you can, include a source that can strengthen your claim -->
|
||||
|
||||
## Tests Performed:
|
||||
<!-- Does it build without errors? Did you test in-game? What did you test? On which OS did you test? Describe any other tests performed -->
|
||||
-
|
||||
-
|
||||
|
||||
|
||||
## How to Test the Changes:
|
||||
<!-- Describe in a detailed step-by-step order how to test the changes -->
|
||||
|
||||
1.
|
||||
2.
|
||||
3.
|
||||
6
modules/mod-dynamic-xp/src/DXP_loader.cpp
Normal file
6
modules/mod-dynamic-xp/src/DXP_loader.cpp
Normal file
@@ -0,0 +1,6 @@
|
||||
void AddSC_dynamic_xp_rate();
|
||||
|
||||
void Addmod_dynamic_xpScripts()
|
||||
{
|
||||
AddSC_dynamic_xp_rate();
|
||||
}
|
||||
54
modules/mod-dynamic-xp/src/dynamicxp.cpp
Normal file
54
modules/mod-dynamic-xp/src/dynamicxp.cpp
Normal file
@@ -0,0 +1,54 @@
|
||||
/*
|
||||
Credits
|
||||
Script reworked by Micrah/Milestorme and Poszer (Poszer is the Best)
|
||||
Module Created by Micrah/Milestorme
|
||||
Original Script from AshmaneCore https://github.com/conan513 Single Player Project
|
||||
*/
|
||||
|
||||
#include "Chat.h"
|
||||
#include "Configuration/Config.h"
|
||||
#include "Player.h"
|
||||
#include "ScriptMgr.h"
|
||||
|
||||
class spp_dynamic_xp_rate : public PlayerScript
|
||||
{
|
||||
public:
|
||||
spp_dynamic_xp_rate() : PlayerScript("spp_dynamic_xp_rate", {
|
||||
PLAYERHOOK_ON_LOGIN,
|
||||
PLAYERHOOK_ON_GIVE_EXP
|
||||
}) { };
|
||||
|
||||
void OnPlayerLogin(Player* player) override
|
||||
{
|
||||
if (sConfigMgr->GetOption<bool>("Dynamic.XP.Rate.Announce", true))
|
||||
ChatHandler(player->GetSession()).SendSysMessage("This server is running the |cff4CFF00Level Dynamic XP |rmodule.");
|
||||
}
|
||||
|
||||
void OnPlayerGiveXP(Player* player, uint32& amount, Unit* /*victim*/, uint8 /*xpSource*/) override
|
||||
{
|
||||
if (sConfigMgr->GetOption<bool>("Dynamic.XP.Rate", true))
|
||||
{
|
||||
if (player->GetLevel() <= 9)
|
||||
amount *= sConfigMgr->GetOption<uint32>("Dynamic.XP.Rate.1-9", 1);
|
||||
else if (player->GetLevel() <= 19)
|
||||
amount *= sConfigMgr->GetOption<uint32>("Dynamic.XP.Rate.10-19", 2);
|
||||
else if (player->GetLevel() <= 29)
|
||||
amount *= sConfigMgr->GetOption<uint32>("Dynamic.XP.Rate.20-29", 3);
|
||||
else if (player->GetLevel() <= 39)
|
||||
amount *= sConfigMgr->GetOption<uint32>("Dynamic.XP.Rate.30-39", 4);
|
||||
else if (player->GetLevel() <= 49)
|
||||
amount *= sConfigMgr->GetOption<uint32>("Dynamic.XP.Rate.40-49", 5);
|
||||
else if (player->GetLevel() <= 59)
|
||||
amount *= sConfigMgr->GetOption<uint32>("Dynamic.XP.Rate.50-59", 6);
|
||||
else if (player->GetLevel() <= 69)
|
||||
amount *= sConfigMgr->GetOption<uint32>("Dynamic.XP.Rate.60-69", 7);
|
||||
else if (player->GetLevel() <= 79)
|
||||
amount *= sConfigMgr->GetOption<uint32>("Dynamic.XP.Rate.70-79", 8);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
void AddSC_dynamic_xp_rate()
|
||||
{
|
||||
new spp_dynamic_xp_rate();
|
||||
}
|
||||
Reference in New Issue
Block a user