From c7acef20a9a17f2ed7a77544c469a1be0e134004 Mon Sep 17 00:00:00 2001 From: Filip Maj Date: Sat, 24 Jun 2017 15:50:03 -0400 Subject: [PATCH] Added missing gl scripts. --- .../Guildleve/PrivateGLBattleDetectNormal.lua | 27 ++++++++++++++++ .../Guildleve/PrivateGLBattleGatherNormal.lua | 11 +++++++ .../Guildleve/PrivateGLBattleHuntNormal.lua | 11 +++++++ data/scripts/guildleve.lua | 32 +++++++++++++++++++ 4 files changed, 81 insertions(+) create mode 100644 data/scripts/directors/Guildleve/PrivateGLBattleDetectNormal.lua create mode 100644 data/scripts/directors/Guildleve/PrivateGLBattleGatherNormal.lua create mode 100644 data/scripts/directors/Guildleve/PrivateGLBattleHuntNormal.lua create mode 100644 data/scripts/guildleve.lua diff --git a/data/scripts/directors/Guildleve/PrivateGLBattleDetectNormal.lua b/data/scripts/directors/Guildleve/PrivateGLBattleDetectNormal.lua new file mode 100644 index 00000000..9c54a2ab --- /dev/null +++ b/data/scripts/directors/Guildleve/PrivateGLBattleDetectNormal.lua @@ -0,0 +1,27 @@ +require ("global") +require ("guildleve") + +--DirectorId, GuildleveId, Aetheryte Location (6 or ~6), exMarkerX, exMarkerY, exMarkerZ + +local guildleveId; + +function init(thisDirector, glId) + guildleveId = glId; + + guildleveData = GetGuildleveGamedata(glId); + members = thisDirector:GetPlayerMembers(); + + if (members ~= nil and #members ~= 0) then + player = members[0]; + player:SendGameMessage(GetWorldMaster(), 50036, 0x20, glId, player, 0); --"You have started the leve..." + player:PlayAnimation(getGLStartAnimationFromSheet(guildleveData.borderId, guildleveData.plateId, false)); + end + + return "/Director/Guildleve/PrivateGLBattleDetectNormal", 0x4e25, glId, 6, 0, 0, 0; +end + +function mainLoop(thisDirector) + + + +end \ No newline at end of file diff --git a/data/scripts/directors/Guildleve/PrivateGLBattleGatherNormal.lua b/data/scripts/directors/Guildleve/PrivateGLBattleGatherNormal.lua new file mode 100644 index 00000000..7098c209 --- /dev/null +++ b/data/scripts/directors/Guildleve/PrivateGLBattleGatherNormal.lua @@ -0,0 +1,11 @@ +require ("global") + +--DirectorId, GuildleveId + +function init() + return "/Director/Guildleve/PrivateGLBattleGatherNormal", 0x4e26, 1220, 6, 100, 0.0, -100; +end + +function onEventStarted(player, actor, triggerName) + +end \ No newline at end of file diff --git a/data/scripts/directors/Guildleve/PrivateGLBattleHuntNormal.lua b/data/scripts/directors/Guildleve/PrivateGLBattleHuntNormal.lua new file mode 100644 index 00000000..f2b4e534 --- /dev/null +++ b/data/scripts/directors/Guildleve/PrivateGLBattleHuntNormal.lua @@ -0,0 +1,11 @@ +require ("global") + +--DirectorId, GuildleveId, Aetheryte Location (6 or ~6), exMarkerX, exMarkerY, exMarkerZ + +function init() + return "/Director/Guildleve/PrivateGLBattleHuntNormal", 0x4e25, 10844, 6, 32.1, 45.1, -35.1; +end + +function onEventStarted(player, actor, triggerName) + +end \ No newline at end of file diff --git a/data/scripts/guildleve.lua b/data/scripts/guildleve.lua new file mode 100644 index 00000000..df4ecbc5 --- /dev/null +++ b/data/scripts/guildleve.lua @@ -0,0 +1,32 @@ +--[[ + +Guildleve constants and functions + +--]] + +--Helper functions + +function glBorderIconIDToAnimID(iconId) + return iconId - 20000; +end + +function glPlateIconIDToAnimID(iconId) + return iconId - 20020; +end + +function getGLStartAnimationFromSheet(border, plate, isBoost) + return getGLStartAnimation(glBorderIconIDToAnimID(border), glPlateIconIDToAnimID(plate), isBoost); +end + +function getGLStartAnimation(border, plate, isBoost) + borderBits = border; + plateBits = bit32.lshift(plate, 7); + + if (isBoost) then + boostBits = 0x8000; --1 shifted 15 left + else + boostBits = 0x0; + end + + return bit32.bor(0x0B000000, boostBits, plateBits, borderBits); +end \ No newline at end of file