Skip to content

Commit

Permalink
Racial Trait Swap NPC
Browse files Browse the repository at this point in the history
  • Loading branch information
acidmanifesto committed Oct 13, 2021
1 parent 92f2948 commit 3f629d4
Show file tree
Hide file tree
Showing 14 changed files with 2,163 additions and 2 deletions.
8 changes: 8 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
[*]
charset = utf-8
indent_style = space
indent_size = 4
tab_width = 4
insert_final_newline = true
trim_trailing_whitespace = true
max_line_length = 80
49 changes: 49 additions & 0 deletions .git_commit_template.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
### TITLE
## Type(Scope/Subscope): Commit ultra short explanation
## |---- Write below the examples with a maximum of 50 characters ----|
## Example 1: fix(DB/SAI): Missing spell to NPC Hogger
## Example 2: fix(CORE/Raid): Phase 2 of Ragnaros
## Example 3: feat(CORE/Commands): New GM command to do something


### DESCRIPTION
## Explain why this change is being made, what does it fix etc...
## |---- Write below the examples with a maximum of 72 characters per lines ----|
## Example: Hogger (id: 492) was not charging player when being engaged.


## Provide links to any issue, commit, pull request or other resource
## Example 1: Closes issue #23
## Example 2: Ported from other project's commit (link)
## Example 3: References taken from wowpedia / wowhead / wowwiki / https://wowgaming.altervista.org/aowow/



## =======================================================
## EXTRA INFOS
## =======================================================
## "Type" can be:
## feat (new feature)
## fix (bug fix)
## refactor (refactoring production code)
## style (formatting, missing semi colons, etc; no code change)
## docs (changes to documentation)
## test (adding or refactoring tests; no production code change)
## chore (updating bash scripts, git files etc; no production code change)
## --------------------
## Remember to
## Capitalize the subject line
## Use the imperative mood in the subject line
## Do not end the subject line with a period
## Separate subject from body with a blank line
## Use the body to explain what and why rather than how
## Can use multiple lines with "-" for bullet points in body
## --------------------
## More info here https://www.conventionalcommits.org/en/v1.0.0-beta.2/
## =======================================================
## "Scope" can be:
## CORE (core related, c++)
## DB (database related, sql)
## =======================================================
## "Subscope" is optional and depends on the nature of the commit.
## =======================================================
107 changes: 105 additions & 2 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,2 +1,105 @@
# Auto detect text files and perform LF normalization
* text=auto
## AUTO-DETECT
## Handle line endings automatically for files detected as
## text and leave all files detected as binary untouched.
## This will handle all files NOT defined below.
* text=auto eol=lf

# Text
*.conf text
*.conf.dist text
*.cmake text

## Scripts
*.sh text
*.fish text
*.lua text

## SQL
*.sql text

## C++
*.c text
*.cc text
*.cxx text
*.cpp text
*.c++ text
*.hpp text
*.h text
*.h++ text
*.hh text


## For documentation

# Documents
*.doc diff=astextplain
*.DOC diff=astextplain
*.docx diff=astextplain
*.DOCX diff=astextplain
*.dot diff=astextplain
*.DOT diff=astextplain
*.pdf diff=astextplain
*.PDF diff=astextplain
*.rtf diff=astextplain
*.RTF diff=astextplain

## DOCUMENTATION
*.markdown text
*.md text
*.mdwn text
*.mdown text
*.mkd text
*.mkdn text
*.mdtxt text
*.mdtext text
*.txt text
AUTHORS text
CHANGELOG text
CHANGES text
CONTRIBUTING text
COPYING text
copyright text
*COPYRIGHT* text
INSTALL text
license text
LICENSE text
NEWS text
readme text
*README* text
TODO text

## GRAPHICS
*.ai binary
*.bmp binary
*.eps binary
*.gif binary
*.ico binary
*.jng binary
*.jp2 binary
*.jpg binary
*.jpeg binary
*.jpx binary
*.jxr binary
*.pdf binary
*.png binary
*.psb binary
*.psd binary
*.svg text
*.svgz binary
*.tif binary
*.tiff binary
*.wbmp binary
*.webp binary


## ARCHIVES
*.7z binary
*.gz binary
*.jar binary
*.rar binary
*.tar binary
*.zip binary

## EXECUTABLES
*.exe binary
*.pyc binary
45 changes: 45 additions & 0 deletions .github/workflows/core-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: core-build
on:
push:
pull_request:

jobs:
build:
strategy:
fail-fast: false
matrix:
compiler: [clang]
runs-on: ubuntu-latest
name: ${{ matrix.compiler }}
env:
COMPILER: ${{ matrix.compiler }}
steps:
- uses: actions/checkout@v2
with:
repository: 'azerothcore/azerothcore-wotlk'
ref: 'master'
submodules: 'recursive'
- uses: actions/checkout@v2
with:
submodules: 'recursive'
path: 'modules/mod-skip-dk-starting-area'
- name: Cache
uses: actions/[email protected]
with:
path: /home/runner/.ccache
key: ccache:${{ matrix.compiler }}:${{ github.ref }}:${{ github.sha }}
restore-keys: |
ccache:${{ matrix.compiler }}:${{ github.ref }}
ccache:${{ matrix.compiler }}
- name: Configure OS
run: source ./apps/ci/ci-install.sh
env:
CONTINUOUS_INTEGRATION: true
- name: Import db
run: source ./apps/ci/ci-import-db.sh
- name: Build
run: source ./apps/ci/ci-compile.sh
- name: Dry run
run: source ./apps/ci/ci-worldserver-dry-run.sh
- name: Check startup errors
run: source ./apps/ci/ci-error-check.sh
48 changes: 48 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -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
4 changes: 4 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
AC_ADD_SCRIPT("${CMAKE_CURRENT_LIST_DIR}/src/SkipDK.cpp")
AC_ADD_SCRIPT_LOADER("SkipDK" "${CMAKE_CURRENT_LIST_DIR}/src/loader.h")

AC_ADD_CONFIG_FILE("${CMAKE_CURRENT_LIST_DIR}/conf/SkipDKModule.conf.dist")
34 changes: 34 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# ![logo](https://raw.githubusercontent.com/azerothcore/azerothcore.github.io/master/images/logo-github.png) AzerothCore

## mod-racial-trait-swap

- Latest build status with azerothcore:

## Description

- Skips the Death Knight starting zone, for those who want to make a Death Knight without having to go through the starting area.

## How to use ingame

1. Enable in conf
2. Go into conf and set any features you want to enable or modify
3. Spawn NPC ID 98888 anywhere and talk to him.

## Requirements

- Latest AzerothCore Wotlk commit

## Installation

1. Simply place the module under the `modules` directory of your AzerothCore source.
1. Re-run CMake and rebuild the AzerothCore source.

## Edit module configuration (optional)

If you need to change the module configuration, go to your server configuration folder (where your worldserver or worldserver.exe is), copy SkipDKModule.conf.dist to SkipDKModule.conf and edit that new file.

### Credits ###
------------------------------------------------------------------------------------------------------------------
- [acidmanifesto (MDic)](https://github.com/acidmanifesto/TC-Custom-Scripts/tree/main/335%20TC/Official%20Trinitycore%20Custom%20Scripts/Official%20Merged/Racial%20Swap%20Skills%20Abilities%20NPC)
- [Jinnaix](https://github.com/Jinnaix)
- AzerothCore: [repository](https://github.com/azerothcore) - [website](http://azerothcore.org/) - [discord chat community](https://discord.gg/PaqQRkd)
26 changes: 26 additions & 0 deletions conf/RacialTraitSwap.dist
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
[worldserver]

###################################################################################################
#Trinitycore Racial Trait Swap NPC #
#####################################
#
# Trinitycore Equipment Exchange NPC
# For a cost, you can swap our you current racial traits for that of another.
#
# Trinitycore.Equipment.Exchange.Announce.enable
# Description: Announces Module when player logs in.
# Default: 0 - (Disabled)
# 1 - (Enabled)

Trinitycore.Racial.Trait.Swap.Announce.enable = 1

#
# Racial.Traits.Swap.Gold
# Description: Cost in gold for Racial Trait Exchange.
# Default: 0 - (Zero Gold Free)
# 10 - (Ten Gold Cost)

Racial.Traits.Swap.Gold = 10

#
###################################################################################################
34 changes: 34 additions & 0 deletions conf/conf.sh.dist
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#!/usr/bin/env bash

## CUSTOM SQL - Important file used by the db_assembler.sh
## Keep only the required variables (base sql files or updates, depending on the DB)


## BASE SQL

DB_AUTH_CUSTOM_PATHS+=(
$MOD_SKELETON_ROOT"/sql/auth/base/"
)

DB_CHARACTERS_CUSTOM_PATHS+=(
$MOD_SKELETON_ROOT"/sql/characters/base/"
)

DB_WORLD_CUSTOM_PATHS+=(
$MOD_SKELETON_ROOT"/sql/world/base/"
)


## UPDATES

DB_AUTH_UPDATE_PATHS+=(
$MOD_SKELETON_ROOT"/sql/auth/updates/"
)

DB_CHARACTERS_UPDATE_PATHS+=(
$MOD_SKELETON_ROOT"/sql/characters/updates/"
)

DB_WORLD_UPDATE_PATHS+=(
$MOD_SKELETON_ROOT"/sql/world/updates/"
)
10 changes: 10 additions & 0 deletions include.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#!/usr/bin/env bash

## GETS THE CURRENT MODULE ROOT DIRECTORY
MOD_SKELETON_ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}" )/" && pwd )"

source $MOD_SKELETON_ROOT"/conf/conf.sh.dist"

if [ -f $MOD_SKELETON_ROOT"/conf/conf.sh" ]; then
source $MOD_SKELETON_ROOT"/conf/conf.sh"
fi
4 changes: 4 additions & 0 deletions setup_git_commit_template.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/usr/bin/env bash

## Set a local git commit template
git config --local commit.template ".git_commit_template.txt" ;
Loading

0 comments on commit 3f629d4

Please sign in to comment.