mirror of
https://github.com/SapphireServer/Sapphire.git
synced 2025-04-26 14:37:44 +00:00
Added SubWil020
Changed the way QuestFlags are indexed to directly mimic retail. This should make implementing new quests more straight forward as indices can be used as they appear in the decompiled scripts.
This commit is contained in:
parent
f2a1f3f4b7
commit
11e06540b2
10 changed files with 463 additions and 46 deletions
|
@ -37,18 +37,21 @@ public:
|
|||
}
|
||||
else
|
||||
{
|
||||
player.playScene( 1310721, 0, HIDE_HOTBAR, 0, 1, 341, std::bind( &WarpTaxi::inner, this, std::placeholders::_1, std::placeholders::_2 ) );
|
||||
player.playScene( 1310721, 0, HIDE_HOTBAR, 0, 1, 341,
|
||||
std::bind( &WarpTaxi::inner, this, std::placeholders::_1, std::placeholders::_2 ) );
|
||||
}
|
||||
}
|
||||
|
||||
void inner2( Entity::Player& player, uint64_t actorId )
|
||||
{
|
||||
player.playScene( getId(), 0, HIDE_HOTBAR, 0, 0, 32529, [this, actorId]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
player.eventStart( actorId, 1310721, Event::EventHandler::Nest, 1, 0 );
|
||||
player.playScene( getId(), 0, HIDE_HOTBAR, 0, 0, 32529,
|
||||
[this, actorId]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
player.eventStart( actorId, 1310721, Event::EventHandler::Nest, 1, 0 );
|
||||
|
||||
player.playScene( 1310721, 0, HIDE_HOTBAR, 0, 1, 341, std::bind( &WarpTaxi::inner, this, std::placeholders::_1, std::placeholders::_2 ) );
|
||||
} );
|
||||
player.playScene( 1310721, 0, HIDE_HOTBAR, 0, 1, 341,
|
||||
std::bind( &WarpTaxi::inner, this, std::placeholders::_1, std::placeholders::_2 ) );
|
||||
} );
|
||||
}
|
||||
|
||||
void onTalk( uint32_t eventId, Entity::Player& player, uint64_t actorId ) override
|
||||
|
|
|
@ -261,7 +261,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 2, true );
|
||||
player.setQuestBitFlag8( getId(), 6, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -279,7 +279,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 3, true );
|
||||
player.setQuestBitFlag8( getId(), 5, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -315,7 +315,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 5, true );
|
||||
player.setQuestBitFlag8( getId(), 3, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -333,7 +333,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 6, true );
|
||||
player.setQuestBitFlag8( getId(), 2, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -351,7 +351,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 7, true );
|
||||
player.setQuestBitFlag8( getId(), 1, true );
|
||||
} );
|
||||
}
|
||||
};
|
||||
|
|
|
@ -235,7 +235,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 2, true );
|
||||
player.setQuestBitFlag8( getId(), 6, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -253,7 +253,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 3, true );
|
||||
player.setQuestBitFlag8( getId(), 5, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -289,7 +289,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 5, true );
|
||||
player.setQuestBitFlag8( getId(), 3, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -307,7 +307,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 6, true );
|
||||
player.setQuestBitFlag8( getId(), 2, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -325,7 +325,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 7, true );
|
||||
player.setQuestBitFlag8( getId(), 1, true );
|
||||
} );
|
||||
}
|
||||
};
|
||||
|
|
|
@ -210,7 +210,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 7, true );
|
||||
player.setQuestBitFlag8( getId(), 1, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -229,7 +229,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 6, true );
|
||||
player.setQuestBitFlag8( getId(), 2, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -248,7 +248,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 5, true );
|
||||
player.setQuestBitFlag8( getId(), 3, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -286,7 +286,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 3, true );
|
||||
player.setQuestBitFlag8( getId(), 5, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -305,7 +305,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 2, true );
|
||||
player.setQuestBitFlag8( getId(), 6, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
|
|
@ -165,7 +165,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 7, true );
|
||||
player.setQuestBitFlag8( getId(), 1, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -184,7 +184,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 6, true );
|
||||
player.setQuestBitFlag8( getId(), 2, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -203,7 +203,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 5, true );
|
||||
player.setQuestBitFlag8( getId(), 3, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
|
|
@ -198,7 +198,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 7, true );
|
||||
player.setQuestBitFlag8( getId(), 1, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -224,7 +224,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 6, true );
|
||||
player.setQuestBitFlag8( getId(), 2, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -250,7 +250,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 5, true );
|
||||
player.setQuestBitFlag8( getId(), 3, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -302,7 +302,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 3, true );
|
||||
player.setQuestBitFlag8( getId(), 5, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
|
|
@ -162,7 +162,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 7, true );
|
||||
player.setQuestBitFlag8( getId(), 1, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -189,7 +189,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 6, true );
|
||||
player.setQuestBitFlag8( getId(), 2, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -216,7 +216,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 5, true );
|
||||
player.setQuestBitFlag8( getId(), 3, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
@ -270,7 +270,7 @@ private:
|
|||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
checkQuestCompletion( player );
|
||||
player.setQuestBitFlag8( getId(), 3, true );
|
||||
player.setQuestBitFlag8( getId(), 5, true );
|
||||
} );
|
||||
}
|
||||
|
||||
|
|
|
@ -11,8 +11,7 @@ using namespace Sapphire;
|
|||
// Start NPC: 1001680
|
||||
// End NPC: 1001691
|
||||
|
||||
class SubWil019 :
|
||||
public Sapphire::ScriptAPI::EventScript
|
||||
class SubWil019 : public Sapphire::ScriptAPI::EventScript
|
||||
{
|
||||
private:
|
||||
// Basic quest information
|
||||
|
|
403
src/scripts/quest/subquest/uldah/SubWil020.cpp
Normal file
403
src/scripts/quest/subquest/uldah/SubWil020.cpp
Normal file
|
@ -0,0 +1,403 @@
|
|||
#include <Actor/Player.h>
|
||||
#include <Manager/EventMgr.h>
|
||||
#include <ScriptObject.h>
|
||||
#include <ctime>
|
||||
#include "Framework.h"
|
||||
|
||||
using namespace Sapphire;
|
||||
|
||||
// Quest Script: SubWil020_00393
|
||||
// Quest Name: Vox Populi
|
||||
// Quest ID: 65929
|
||||
// Start NPC: 1001685
|
||||
// End NPC: 1001945
|
||||
|
||||
class SubWil020 : public Sapphire::ScriptAPI::EventScript
|
||||
{
|
||||
private:
|
||||
// Basic quest information
|
||||
// Quest vars / flags used
|
||||
// GetQuestBitFlag8
|
||||
// GetQuestUI8AH
|
||||
// GetQuestUI8AL
|
||||
// GetQuestUI8BH
|
||||
|
||||
// Steps in this quest ( 0 is before accepting,
|
||||
// 1 is first, 255 means ready for turning it in
|
||||
enum Sequence : uint8_t
|
||||
{
|
||||
Seq0 = 0,
|
||||
Seq1 = 1,
|
||||
SeqFinish = 255,
|
||||
};
|
||||
|
||||
// Quest rewards
|
||||
static constexpr auto RewardExpFactor = 55;
|
||||
static constexpr auto RewardGil = 109;
|
||||
|
||||
// Entities found in the script data of the quest
|
||||
static constexpr auto Actor0 = 1001685;
|
||||
static constexpr auto Actor1 = 1001940;
|
||||
static constexpr auto Actor2 = 1001937;
|
||||
static constexpr auto Actor3 = 1001939;
|
||||
static constexpr auto Actor4 = 1001942;
|
||||
static constexpr auto Actor5 = 1001949;
|
||||
static constexpr auto Actor6 = 1003902;
|
||||
static constexpr auto Actor7 = 1001914;
|
||||
static constexpr auto Actor8 = 1003899;
|
||||
static constexpr auto Actor9 = 1001945;
|
||||
|
||||
public:
|
||||
SubWil020() : EventScript( 65929 ) {};
|
||||
~SubWil020() {};
|
||||
|
||||
void checkQuestProgression( Entity::Player& player )
|
||||
{
|
||||
if( player.getQuestUI8AL( getId() ) == 6 && player.getQuestUI8BH( getId() ) == 2 )
|
||||
{
|
||||
player.updateQuest( getId(), SeqFinish );
|
||||
}
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
// Event Handlers
|
||||
void onTalk( uint32_t eventId, Entity::Player& player, uint64_t actorId ) override
|
||||
{
|
||||
auto pEventMgr = m_framework->get< World::Manager::EventMgr >();
|
||||
auto actor = pEventMgr->mapEventActorToRealActor( static_cast< uint32_t >( actorId ) );
|
||||
|
||||
/*player.setQuestUI8BH( getId(), 0 );
|
||||
player.setQuestUI8AL( getId(), 0 );
|
||||
player.setQuestBitFlag8( getId(), 0, false );
|
||||
player.setQuestBitFlag8( getId(), 1, false );
|
||||
player.setQuestBitFlag8( getId(), 2, false );
|
||||
player.setQuestBitFlag8( getId(), 3, false );
|
||||
player.setQuestBitFlag8( getId(), 4, false );
|
||||
player.setQuestBitFlag8( getId(), 5, false );
|
||||
player.setQuestBitFlag8( getId(), 6, false );
|
||||
player.setQuestBitFlag8( getId(), 7, false );
|
||||
player.setQuestBitFlag8( getId(), 8, false );*/
|
||||
|
||||
if( actor == Actor0 )
|
||||
{
|
||||
Scene00000( player );
|
||||
}
|
||||
else if( actor == Actor1 )
|
||||
{
|
||||
if( !player.getQuestBitFlag8( getId(), 1 ) )
|
||||
Scene00001( player );
|
||||
else
|
||||
Scene00002( player );
|
||||
}
|
||||
else if( actor == Actor2 )
|
||||
{
|
||||
if( !player.getQuestBitFlag8( getId(), 2 ) )
|
||||
Scene00002( player );
|
||||
else
|
||||
Scene00003( player );
|
||||
}
|
||||
else if( actor == Actor3 )
|
||||
{
|
||||
if( !player.getQuestBitFlag8( getId(), 3 ) )
|
||||
Scene00005( player );
|
||||
else
|
||||
Scene00006( player );
|
||||
}
|
||||
else if( actor == Actor4 )
|
||||
{
|
||||
if( !player.getQuestBitFlag8( getId(), 4 ) )
|
||||
Scene00007( player );
|
||||
else
|
||||
Scene00008( player );
|
||||
}
|
||||
else if( actor == Actor5 )
|
||||
{
|
||||
if( !player.getQuestBitFlag8( getId(), 5 ) )
|
||||
Scene00009( player );
|
||||
else
|
||||
Scene00010( player );
|
||||
}
|
||||
else if( actor == Actor6 )
|
||||
{
|
||||
if( !player.getQuestBitFlag8( getId(), 6 ) )
|
||||
Scene00011( player );
|
||||
else
|
||||
Scene00012( player );
|
||||
}
|
||||
else if( actor == Actor7 )
|
||||
{
|
||||
if( !player.getQuestBitFlag8( getId(), 7 ) )
|
||||
Scene00013( player );
|
||||
else
|
||||
Scene00014( player );
|
||||
}
|
||||
else if( actor == Actor8 )
|
||||
{
|
||||
if( !player.getQuestBitFlag8( getId(), 0 ) )
|
||||
Scene00015( player );
|
||||
else
|
||||
Scene00016( player );
|
||||
}
|
||||
else if( actor == Actor9 )
|
||||
{
|
||||
Scene00017( player );
|
||||
}
|
||||
}
|
||||
|
||||
private:
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
// Available Scenes in this quest, not necessarly all are used
|
||||
void Scene00000( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 0, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
if( result.param2 == 1 )
|
||||
{
|
||||
player.updateQuest( getId(), Seq1 );
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
void Scene00001( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 1, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
auto hustCount = player.getQuestUI8AL( getId() );
|
||||
hustCount += 1;
|
||||
player.setQuestUI8AL( getId(), hustCount );
|
||||
player.sendQuestMessage( getId(), 0, 2, hustCount, 6 );
|
||||
player.setQuestBitFlag8( getId(), 1, true );
|
||||
checkQuestProgression( player );
|
||||
} );
|
||||
}
|
||||
|
||||
void Scene00002( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 2, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
auto hustCount = player.getQuestUI8AL( getId() );
|
||||
hustCount += 1;
|
||||
player.setQuestUI8AL( getId(), hustCount );
|
||||
player.sendQuestMessage( getId(), 0, 2, hustCount, 6 );
|
||||
player.setQuestBitFlag8( getId(), 2, true );
|
||||
checkQuestProgression( player );
|
||||
} );
|
||||
}
|
||||
|
||||
void Scene00003( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 3, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
auto hustCount = player.getQuestUI8AL( getId() );
|
||||
hustCount += 1;
|
||||
player.setQuestUI8AL( getId(), hustCount );
|
||||
player.sendQuestMessage( getId(), 0, 2, hustCount, 6 );
|
||||
player.setQuestBitFlag8( getId(), 3, true );
|
||||
checkQuestProgression( player );
|
||||
} );
|
||||
}
|
||||
|
||||
void Scene00004( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 4, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
auto hustCount = player.getQuestUI8AL( getId() );
|
||||
hustCount += 1;
|
||||
player.setQuestUI8AL( getId(), hustCount );
|
||||
player.sendQuestMessage( getId(), 0, 2, hustCount, 6 );
|
||||
player.setQuestBitFlag8( getId(), 4, true );
|
||||
checkQuestProgression( player );
|
||||
} );
|
||||
}
|
||||
|
||||
void Scene00005( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 5, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
auto hustCount = player.getQuestUI8AL( getId() );
|
||||
hustCount += 1;
|
||||
player.setQuestUI8AL( getId(), hustCount );
|
||||
player.sendQuestMessage( getId(), 0, 2, hustCount, 6 );
|
||||
player.setQuestBitFlag8( getId(), 5, true );
|
||||
checkQuestProgression( player );
|
||||
} );
|
||||
}
|
||||
|
||||
void Scene00006( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 6, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
auto hustCount = player.getQuestUI8AL( getId() );
|
||||
hustCount += 1;
|
||||
player.setQuestUI8AL( getId(), hustCount );
|
||||
player.sendQuestMessage( getId(), 0, 2, hustCount, 6 );
|
||||
player.setQuestBitFlag8( getId(), 6, true );
|
||||
checkQuestProgression( player );
|
||||
} );
|
||||
}
|
||||
|
||||
void Scene00007( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 7, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
auto thalCount = player.getQuestUI8BH( getId() );
|
||||
thalCount += 1;
|
||||
player.setQuestUI8BH( getId(), thalCount );
|
||||
player.sendQuestMessage( getId(), 1, 2, thalCount, 2 );
|
||||
player.setQuestBitFlag8( getId(), 7, true );
|
||||
checkQuestProgression( player );
|
||||
} );
|
||||
}
|
||||
|
||||
void Scene00008( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 8, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
auto thalCount = player.getQuestUI8BH( getId() );
|
||||
thalCount += 1;
|
||||
player.setQuestUI8BH( getId(), thalCount );
|
||||
player.sendQuestMessage( getId(), 1, 2, thalCount, 2 );
|
||||
player.setQuestBitFlag8( getId(), 8, true );
|
||||
checkQuestProgression( player );
|
||||
} );
|
||||
}
|
||||
|
||||
void Scene00009( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 9, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00010( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 10, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00011( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 11, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00012( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 12, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00013( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 13, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00014( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 14, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00015( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 15, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00016( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 16, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00017( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 17, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{
|
||||
if( result.param2 == 1 )
|
||||
{
|
||||
if( player.giveQuestRewards( getId(), 0 ) )
|
||||
{
|
||||
player.finishQuest( getId() );
|
||||
}
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
void Scene00018( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 18, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00019( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 19, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00020( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 20, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00021( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 21, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00022( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 22, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00023( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 23, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00024( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 24, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
void Scene00025( Entity::Player& player )
|
||||
{
|
||||
player.playScene( getId(), 25, NONE,
|
||||
[ & ]( Entity::Player& player, const Event::SceneResult& result )
|
||||
{} );
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
EXPOSE_SCRIPT( SubWil020 );
|
|
@ -760,14 +760,16 @@ void Sapphire::Entity::Player::setQuestBitFlag8( uint16_t questId, uint8_t index
|
|||
{
|
||||
int8_t idx = getQuestIndex( questId );
|
||||
|
||||
uint8_t realIdx = 8 - index;
|
||||
|
||||
if( idx != -1 )
|
||||
{
|
||||
std::shared_ptr< QuestActive > pNewQuest = m_activeQuests[ idx ];
|
||||
|
||||
if( val )
|
||||
pNewQuest->a.BitFlag8 |= ( 1 << index );
|
||||
pNewQuest->a.BitFlag8 |= ( 1 << realIdx );
|
||||
else
|
||||
pNewQuest->a.BitFlag8 &= ~( 1 << index );
|
||||
pNewQuest->a.BitFlag8 &= ~( 1 << realIdx );
|
||||
|
||||
updateQuest( questId, pNewQuest->c.sequence );
|
||||
}
|
||||
|
@ -777,14 +779,16 @@ void Sapphire::Entity::Player::setQuestBitFlag16( uint16_t questId, uint8_t inde
|
|||
{
|
||||
int8_t idx = getQuestIndex( questId );
|
||||
|
||||
uint8_t realIdx = 8 - index;
|
||||
|
||||
if( idx != -1 )
|
||||
{
|
||||
std::shared_ptr< QuestActive > pNewQuest = m_activeQuests[ idx ];
|
||||
|
||||
if( val )
|
||||
pNewQuest->a.BitFlag16 |= ( 1 << index );
|
||||
pNewQuest->a.BitFlag16 |= ( 1 << realIdx );
|
||||
else
|
||||
pNewQuest->a.BitFlag16 &= ~( 1 << index );
|
||||
pNewQuest->a.BitFlag16 &= ~( 1 << realIdx );
|
||||
|
||||
updateQuest( questId, pNewQuest->c.sequence );
|
||||
}
|
||||
|
@ -794,14 +798,16 @@ void Sapphire::Entity::Player::setQuestBitFlag24( uint16_t questId, uint8_t inde
|
|||
{
|
||||
int8_t idx = getQuestIndex( questId );
|
||||
|
||||
uint8_t realIdx = 8 - index;
|
||||
|
||||
if( idx != -1 )
|
||||
{
|
||||
std::shared_ptr< QuestActive > pNewQuest = m_activeQuests[ idx ];
|
||||
|
||||
if( val )
|
||||
pNewQuest->a.BitFlag24 |= ( 1 << index );
|
||||
pNewQuest->a.BitFlag24 |= ( 1 << realIdx );
|
||||
else
|
||||
pNewQuest->a.BitFlag24 &= ~( 1 << index );
|
||||
pNewQuest->a.BitFlag24 &= ~( 1 << realIdx );
|
||||
|
||||
updateQuest( questId, pNewQuest->c.sequence );
|
||||
}
|
||||
|
@ -811,14 +817,16 @@ void Sapphire::Entity::Player::setQuestBitFlag32( uint16_t questId, uint8_t inde
|
|||
{
|
||||
int8_t idx = getQuestIndex( questId );
|
||||
|
||||
uint8_t realIdx = 8 - index;
|
||||
|
||||
if( idx != -1 )
|
||||
{
|
||||
std::shared_ptr< QuestActive > pNewQuest = m_activeQuests[ idx ];
|
||||
|
||||
if( val )
|
||||
pNewQuest->a.BitFlag32 |= ( 1 << index );
|
||||
pNewQuest->a.BitFlag32 |= ( 1 << realIdx );
|
||||
else
|
||||
pNewQuest->a.BitFlag32 &= ~( 1 << index );
|
||||
pNewQuest->a.BitFlag32 &= ~( 1 << realIdx );
|
||||
|
||||
updateQuest( questId, pNewQuest->c.sequence );
|
||||
}
|
||||
|
@ -828,14 +836,16 @@ void Sapphire::Entity::Player::setQuestBitFlag40( uint16_t questId, uint8_t inde
|
|||
{
|
||||
int8_t idx = getQuestIndex( questId );
|
||||
|
||||
uint8_t realIdx = 8 - index;
|
||||
|
||||
if( idx != -1 )
|
||||
{
|
||||
std::shared_ptr< QuestActive > pNewQuest = m_activeQuests[ idx ];
|
||||
|
||||
if( val )
|
||||
pNewQuest->a.BitFlag40 |= ( 1 << index );
|
||||
pNewQuest->a.BitFlag40 |= ( 1 << realIdx );
|
||||
else
|
||||
pNewQuest->a.BitFlag40 &= ~( 1 << index );
|
||||
pNewQuest->a.BitFlag40 &= ~( 1 << realIdx );
|
||||
|
||||
updateQuest( questId, pNewQuest->c.sequence );
|
||||
}
|
||||
|
@ -845,14 +855,16 @@ void Sapphire::Entity::Player::setQuestBitFlag48( uint16_t questId, uint8_t inde
|
|||
{
|
||||
int8_t idx = getQuestIndex( questId );
|
||||
|
||||
uint8_t realIdx = 8 - index;
|
||||
|
||||
if( idx != -1 )
|
||||
{
|
||||
std::shared_ptr< QuestActive > pNewQuest = m_activeQuests[ idx ];
|
||||
|
||||
if( val )
|
||||
pNewQuest->a.BitFlag48 |= ( 1 << index );
|
||||
pNewQuest->a.BitFlag48 |= ( 1 << realIdx );
|
||||
else
|
||||
pNewQuest->a.BitFlag48 &= ~( 1 << index );
|
||||
pNewQuest->a.BitFlag48 &= ~( 1 << realIdx );
|
||||
|
||||
updateQuest( questId, pNewQuest->c.sequence );
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue