Quest persistence pass

Quest persistence pass.
This commit is contained in:
Jaysyn904
2022-07-03 00:17:49 -04:00
parent 5bb45371fc
commit 2cf9f57160
209 changed files with 32032 additions and 2682 deletions

View File

@@ -7,7 +7,7 @@
//:://////////////////////////////////////////////
void main()
{
// Give the speaker the items
CreateItemOnObject("nw_it_mpotion015", GetPCSpeaker(), 1);
// Give the speaker the items
CreateItemOnObject("nw_it_mpotion015", GetPCSpeaker(), 1);
}

View File

@@ -7,7 +7,7 @@
//:://////////////////////////////////////////////
void main()
{
// Give the speaker the items
CreateItemOnObject("bottleofair", GetPCSpeaker(), 1);
// Give the speaker the items
CreateItemOnObject("bottleofair", GetPCSpeaker(), 1);
}

View File

@@ -8,9 +8,9 @@
void main()
{
// Remove items from the player's inventory
object oItemToTake;
oItemToTake = GetItemPossessedBy(GetPCSpeaker(), "HerzordsHead");
if(GetIsObjectValid(oItemToTake) != 0)
DestroyObject(oItemToTake);
// Remove items from the player's inventory
object oItemToTake;
oItemToTake = GetItemPossessedBy(GetPCSpeaker(), "HerzordsHead");
if(GetIsObjectValid(oItemToTake) != 0)
DestroyObject(oItemToTake);
}

View File

@@ -8,9 +8,9 @@
void main()
{
// Remove items from the player's inventory
object oItemToTake;
oItemToTake = GetItemPossessedBy(GetPCSpeaker(), "HydrasHeart");
if(GetIsObjectValid(oItemToTake) != 0)
DestroyObject(oItemToTake);
// Remove items from the player's inventory
object oItemToTake;
oItemToTake = GetItemPossessedBy(GetPCSpeaker(), "HydrasHeart");
if(GetIsObjectValid(oItemToTake) != 0)
DestroyObject(oItemToTake);
}

View File

@@ -7,7 +7,7 @@
//:://////////////////////////////////////////////
void main()
{
// Give the speaker the items
CreateItemOnObject("item051", GetPCSpeaker(), 1);
// Give the speaker the items
CreateItemOnObject("item051", GetPCSpeaker(), 1);
}

View File

@@ -9,14 +9,14 @@
void main()
{
// Give the speaker some gold
GiveGoldToCreature(GetPCSpeaker(), 10000);
// Give the speaker some gold
GiveGoldToCreature(GetPCSpeaker(), 10000);
// Give the speaker some XP
RewardPartyXP(1000, GetPCSpeaker());
// Give the speaker some XP
RewardPartyXP(1000, GetPCSpeaker());
// Give the speaker the items
CreateItemOnObject("item049", GetPCSpeaker(), 1);
CreateItemOnObject("staffoffire", GetPCSpeaker(), 1);
// Give the speaker the items
CreateItemOnObject("item049", GetPCSpeaker(), 1);
CreateItemOnObject("staffoffire", GetPCSpeaker(), 1);
}

View File

@@ -7,7 +7,7 @@
//:://////////////////////////////////////////////
void main()
{
// Give the speaker the items
CreateItemOnObject("item053", GetPCSpeaker(), 1);
// Give the PC "Orcus' Dark Blessing"
CreateItemOnObject("item053", GetPCSpeaker(), 1);
}

View File

@@ -0,0 +1,27 @@
//::///////////////////////////////////////////////
//:: cv_50cp_100xp.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
A minor conversational reward.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 7/30/2005 2:30:04 PM
//:://////////////////////////////////////////////
#include "nw_i0_tool"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Give the PC's party a little gold
RewardPartyGP(100, oPC);
//:: Give the PC's party some XP
RewardPartyXP(50, oPC);
}

View File

@@ -0,0 +1,26 @@
//::///////////////////////////////////////////////
//:: cv_chk_150gp.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Checks to see if the PC has 150gp.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 8/21/2005 4:12:07 PM
//:://////////////////////////////////////////////
int StartingConditional()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
int nGP = GetGold(oPC);
//:: Check to see if the PC has 150 gp.
if ( GetGold(oPC) < 150 )
return FALSE;
return TRUE;
}

View File

@@ -0,0 +1,80 @@
//:://////////////////////////////////////////////
//:: cv_gobsbgone.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Makes Gurran & his goblin friends leave the
area after completion of his quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220701
//:://////////////////////////////////////////////
void main()
{
//: Declare major variables
object oPC = GetPCSpeaker();
object oTarget;
object oExit = GetObjectByTag("ZEP_TRAPS004"); //:: This is the nearby pit trap
oTarget = GetObjectByTag("NPC_G_OSTLER");
//:: Remove plot/immoral/lootable flags JUST in case.
SetPlotFlag(oTarget, FALSE);
SetImmortal(oTarget, FALSE);
SetLootable(oTarget, FALSE);
//:: Run away
ActionMoveToObject(oExit, TRUE);
//:: Destroy ourselves after fleeing the scene
DelayCommand(6.0f, DestroyObject(oTarget));
oTarget = GetObjectByTag("NPC_G_ORG");
//:: Remove plot/immoral/lootable flags JUST in case.
SetPlotFlag(oTarget, FALSE);
SetImmortal(oTarget, FALSE);
SetLootable(oTarget, FALSE);
//:: Run away
ActionMoveToObject(oExit, TRUE);
//:: Destroy ourselves after fleeing the scene
DelayCommand(6.0f, DestroyObject(oTarget));
oTarget = GetObjectByTag("NPC_G_ZIM");
//:: Remove plot/immoral/lootable flags JUST in case.
SetPlotFlag(oTarget, FALSE);
SetImmortal(oTarget, FALSE);
SetLootable(oTarget, FALSE);
//:: Run away
ActionMoveToObject(oExit, TRUE);;
//:: Destroy ourselves after fleeing the scene
DelayCommand(6.0f, DestroyObject(oTarget));
oTarget = GetObjectByTag("NPC_G_ZAGROS");
//:: Remove plot/immoral/lootable flags JUST in case.
SetPlotFlag(oTarget, FALSE);
SetImmortal(oTarget, FALSE);
SetLootable(oTarget, FALSE);
//:: Run away
ActionMoveToObject(oExit, TRUE);
//:: Destroy ourselves after fleeing the scene
DelayCommand(6.0f, DestroyObject(oTarget));
oTarget = GetObjectByTag("NPC_G_GURRAN");
//:: Remove plot/immoral/lootable flags JUST in case.
SetPlotFlag(oTarget, FALSE);
SetImmortal(oTarget, FALSE);
SetLootable(oTarget, FALSE);
//:: Run away
ActionMoveToObject(oExit, TRUE);
//:: Destroy ourselves after fleeing the scene
DelayCommand(6.0f, DestroyObject(oTarget));
}

View File

@@ -0,0 +1,21 @@
//::///////////////////////////////////////////////
//:: cv_take_150gp.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Takes 150 GP from the PC.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 8/21/2005 4:12:07 PM
//:://////////////////////////////////////////////
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Remove some gold from the PC
TakeGoldFromCreature(150, oPC, FALSE);
}

View File

@@ -0,0 +1,18 @@
//::///////////////////////////////////////////////
//:: FileName at_018
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
//:: Created By: Script Wizard
//:: Created On: 7/30/2005 2:30:04 PM
//:://////////////////////////////////////////////
#include "nw_i0_tool"
void main()
{
// Give the speaker some gold
RewardPartyGP(100, GetPCSpeaker());
// Give the speaker some XP
RewardPartyXP(50, GetPCSpeaker());
}

View File

@@ -13,7 +13,6 @@
#include "pqj_inc"
void main()
{
//:: Declare major variables

View File

@@ -0,0 +1,23 @@
//::///////////////////////////////////////////////
//:: qst_blood_end.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Ends the "Blood of the Dead" quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220702
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("blood", 2, oPC);
}

View File

@@ -0,0 +1,23 @@
//::///////////////////////////////////////////////
//:: qst_blood_start.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Start & tracks the "Blood of the Dead" quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220702
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("blood", 1, oPC);
}

View File

@@ -0,0 +1,28 @@
//::///////////////////////////////////////////////
//:: qst_ch_dirty02.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Checks that the "Dirty Deeds" quest was
refused. (Stage #2)
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220702
//:://////////////////////////////////////////////
#include "pqj_inc"
int StartingConditional()
{
//: Declare major variables
object oPC = GetPCSpeaker();
int nInt;
//:: Inspect quest state
nInt = RetrieveQuestState("dirtydeed", oPC);
if (!nInt == 2)
return FALSE;
return TRUE;
}

View File

@@ -0,0 +1,28 @@
//::///////////////////////////////////////////////
//:: qst_ch_dirty03.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Checks for stage #3 of the "Dirty Deeds" quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220701
//:://////////////////////////////////////////////
#include "pqj_inc"
int StartingConditional()
{
//: Declare major variables
object oPC = GetPCSpeaker();
int nInt;
//:: Inspect quest state
nInt = RetrieveQuestState("dirtydeed", oPC);
if (!nInt == 3)
return FALSE;
return TRUE;
}

View File

@@ -0,0 +1,28 @@
//::///////////////////////////////////////////////
//:: qst_ch_dirty05.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Checks for stage 5 of the "Dirty Deeds" quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220702
//:://////////////////////////////////////////////
#include "pqj_inc"
int StartingConditional()
{
//: Declare major variables
object oPC = GetPCSpeaker();
int nInt;
//:: Inspect quest state
nInt = RetrieveQuestState("dirtydeed", oPC);
if (!nInt == 5)
return FALSE;
return TRUE;
}

View File

@@ -0,0 +1,29 @@
//::///////////////////////////////////////////////
//:: qst_ch_tribitz00.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Checks that the "Quests for Tribitz" hasn't
been started yet..
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220701
//:://////////////////////////////////////////////
#include "pqj_inc"
int StartingConditional()
{
//: Declare major variables
object oPC = GetPCSpeaker();
int nInt;
//:: Inspect quest state
nInt = RetrieveQuestState("tribitz", oPC);
if (!nInt == 0)
return FALSE;
return TRUE;
}

View File

@@ -0,0 +1,30 @@
//::///////////////////////////////////////////////
//:: qst_chk_tribitz01.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Checks for the start of the "Quests for
Tribitz" quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220702
//:://////////////////////////////////////////////
#include "pqj_inc"
int StartingConditional()
{
//: Declare major variables
object oPC = GetPCSpeaker();
int nInt;
//:: Inspect quest state
nInt = RetrieveQuestState("tribitz", oPC);
if (nInt >= 1)
return TRUE;
return FALSE;
}

View File

@@ -0,0 +1,29 @@
//::///////////////////////////////////////////////
//:: qst_chk_tribitz03.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Checks for stage #3 of the "Quests for
Tribitz".
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220701
//:://////////////////////////////////////////////
#include "pqj_inc"
int StartingConditional()
{
//: Declare major variables
object oPC = GetPCSpeaker();
int nInt;
//:: Inspect quest state
nInt = RetrieveQuestState("tribitz", oPC);
if (!nInt == 3)
return FALSE;
return TRUE;
}

View File

@@ -0,0 +1,28 @@
//::///////////////////////////////////////////////
//:: qst_ch_tribitz05.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Checks for stage #5 of the "Quests for
Tribitz" quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220702
//:://////////////////////////////////////////////
#include "pqj_inc"
int StartingConditional()
{
//: Declare major variables
object oPC = GetPCSpeaker();
int nInt;
//:: Inspect quest state
nInt = RetrieveQuestState("tribitz", oPC);
if (!nInt == 5)
return FALSE;
return TRUE;
}

View File

@@ -0,0 +1,29 @@
//::///////////////////////////////////////////////
//:: qst_ch_yuanti02.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Checks for stage #2 of the "Homesick Yuan-Ti"
quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220702
//:://////////////////////////////////////////////
#include "pqj_inc"
int StartingConditional()
{
//: Declare major variables
object oPC = GetPCSpeaker();
int nInt;
//:: Inspect quest state
nInt = RetrieveQuestState("yuanti", oPC);
if (!nInt == 2)
return FALSE;
return TRUE;
}

View File

@@ -0,0 +1,24 @@
//::///////////////////////////////////////////////
//:: qst_dirty_2nd.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Sets stage #2 for the "Dirty Deeds" quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220702
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("dirtydeed", 2, oPC);
}

View File

@@ -0,0 +1,24 @@
//::///////////////////////////////////////////////
//:: qst_dirty_3rd.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Sets stage #3 for the "Dirty Deeds" quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220702
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("dirtydeed", 3, oPC);
}

View File

@@ -0,0 +1,28 @@
//::///////////////////////////////////////////////
//:: qst_dirty_5th.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Rewards PC & sets stage #5 for the "Dirty
Deeds" quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 8/21/2005 9:45:19 PM
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("dirtydeed", 5, oPC);
//:: Give the PC a Potion of Bull's Strength
CreateItemOnObject("nw_it_mpotion015", oPC, 1);
}

View File

@@ -0,0 +1,28 @@
//::///////////////////////////////////////////////
//:: qst_dirty_end1.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Finished & rewards the PC for completing the
"Dirty Deeds" quest. This one ends on stage #4
with Knoob dead.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 8/21/2005 9:52:18 PM
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("dirtydeed", 4, oPC);
//:: Give the PC the "Bottle of Air"
CreateItemOnObject("bottleofair", oPC, 1);
}

View File

@@ -0,0 +1,25 @@
//::///////////////////////////////////////////////
//:: qst_dirty_end2.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Finished & rewards the PC for completing the
"Dirty Deeds" quest. This one ends on stage #6
with Lothum dead.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 8/21/2005 9:52:18 PM
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("dirtydeed", 6, oPC);
}

View File

@@ -0,0 +1,24 @@
//::///////////////////////////////////////////////
//:: qst_dirty_st.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Starts & tracks the "Dirty Deeds" quest
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220702
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("dirtydeed", 1, oPC);
}

View File

@@ -13,13 +13,11 @@
#include "pqj_inc"
void main()
{
{
//:: Declare major variables
object oPC = GetPCSpeaker();
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("ghost", 1, oPC);
}
AddPersistentJournalQuestEntry("ghost", 1, oPC);
}

View File

@@ -15,14 +15,17 @@
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Give the PC's party some XP
RewardPartyXP(2000, GetPCSpeaker());
RewardPartyXP(2000, oPC);
//:: Give the PC a diamond.
CreateItemOnObject("nw_it_gem005", GetPCSpeaker(), 1);
CreateItemOnObject("nw_it_gem005", oPC, 1);
//:: Set Quest stage & update DB.
AddPersistentJournalQuestEntry("husband", 3, GetPCSpeaker());
AddPersistentJournalQuestEntry("husband", 3, oPC);
}

View File

@@ -0,0 +1,25 @@
//::///////////////////////////////////////////////
//:: qst_lostgob_2nd.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Starts & tracks the "Lost Goblins" quest
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220730
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("lostgoblins", 2, oPC);
}

View File

@@ -0,0 +1,25 @@
//::///////////////////////////////////////////////
//:: qst_lostgob_end.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Ends the "Lost Goblins" quest
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220730
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("lostgoblins", 3, oPC);
}

View File

@@ -0,0 +1,25 @@
//::///////////////////////////////////////////////
//:: qst_lostgob_st.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Starts & tracks the "Lost Goblins" quest
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220730
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("lostgoblins", 1, oPC);
}

View File

@@ -14,12 +14,11 @@
#include "pqj_inc"
void main()
{
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("marthek", 3, oPC);
}
}

View File

@@ -14,11 +14,11 @@
#include "pqj_inc"
void main()
{
{
//:: Declare major variables
object oPC = GetPCSpeaker();
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("outcasts", 1, oPC);
AddPersistentJournalQuestEntry("outcasts", 1, oPC);
}
}

View File

@@ -4,7 +4,7 @@
//:://////////////////////////////////////////////
/*
Finished & rewards the PC for completing the
"Mushroom of Youth" quest.
"Spiders' Captive" quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn

View File

@@ -0,0 +1,25 @@
//::///////////////////////////////////////////////
//:: qst_tribitz_2nd.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Sets stage #2 for the "Quests for Tribitz"
quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 8/23/2005 11:03:26 PM
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("tribitz", 2, oPC);
}

View File

@@ -0,0 +1,31 @@
//::///////////////////////////////////////////////
//:: qst_tribitz_3rd.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Sets stage #3 for the "Quests for Tribitz"
quest & removes the quest item.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 8/23/2005 11:03:26 PM
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
object oItemToTake;
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("tribitz", 3, oPC);
//:: Remove quest item from PC's inventory
oItemToTake = GetItemPossessedBy(oPC, "HydrasHeart");
if(GetIsObjectValid(oItemToTake) != 0)
DestroyObject(oItemToTake);
}

View File

@@ -0,0 +1,31 @@
//::///////////////////////////////////////////////
//:: qst_tribitz_4th.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Sets stage #4 for the "Quests for Tribitz"
quest & removes the quest item.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 8/23/2005 10:05:29 PM
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
object oItemToTake;
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("tribitz", 4, oPC);
//:: Remove quest item from PC's inventory
oItemToTake = GetItemPossessedBy(oPC, "HerzordsHead");
if(GetIsObjectValid(oItemToTake) != 0)
DestroyObject(oItemToTake);
}

View File

@@ -0,0 +1,28 @@
//::///////////////////////////////////////////////
//:: qst_tribitz_7th.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Sets stage 7 for the "Quests for Tribitz"
quest & give the PC the quest item.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 8/24/2005 9:00:06 PM
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("tribitz", 7, oPC);
//:: Give the PC the plot item
CreateItemOnObject("item051", oPC, 1);
}

View File

@@ -0,0 +1,26 @@
//::///////////////////////////////////////////////
//:: qst_tribitz_end.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Finishes the "Quests of Tribitz" quest.
Stage #6, where the PCs have discovered
Tribitz betrayal.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 8/24/2005 9:08:28 PM
//:://////////////////////////////////////////////
#include "pqj_inc"
#include "nw_i0_tool"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("tribitz", 6, oPC);
}

View File

@@ -0,0 +1,51 @@
//::///////////////////////////////////////////////
//:: qst_tribitz_end1.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Finishes the "Quests of Tribitz" quest with
Tribitz dead & cleans up NPCs.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 8/24/2005 9:08:28 PM
//:://////////////////////////////////////////////
#include "pqj_inc"
#include "nw_i0_tool"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
object oTarget = OBJECT_SELF;
object oSpawn;
location lTarget;
int nInt = GetObjectType(oTarget);
//:: Set Tribitz to destroyable.
SetIsDestroyable( TRUE, FALSE, FALSE );
//:: Flamestrike Tribitz.
//:: Visual effects can't be applied to waypoints, so if it is a WP apply to the WP's location instead.
if (nInt != OBJECT_TYPE_WAYPOINT)
ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_DIVINE_STRIKE_FIRE), oTarget);
else ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_DIVINE_STRIKE_FIRE), GetLocation(oTarget));
//:: Destroy Tribitz.
DestroyObject(oTarget, 3.0);
//:: Change target to Herzord's waypoint & get it's location.
oTarget = GetWaypointByTag("herz1");
lTarget = GetLocation(oTarget);
//:: Create new Hezord (Not sure why this is needed. Should have just been another starting conditional in Herzord's dialog?)
oSpawn = CreateObject(OBJECT_TYPE_CREATURE, "herzord001", lTarget);
//:: Destroy old Herzord
oTarget = GetObjectByTag("herzord");
SetIsDestroyable( TRUE, FALSE, FALSE );
DestroyObject(oTarget, 0.0);
}

View File

@@ -0,0 +1,35 @@
//::///////////////////////////////////////////////
//:: qst_tribitz_end2.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Finished & rewards the PC for completing the
"Quests of Tribitz" quest with Tribitz dead.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 8/24/2005 9:08:28 PM
//:://////////////////////////////////////////////
#include "pqj_inc"
#include "nw_i0_tool"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Give the speaker some gold
GiveGoldToCreature(oPC, 10000);
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("tribitz", 8, oPC);
//:: Give the PC's party some XP
RewardPartyXP(1000, oPC);
//:: Give the PC the reward items
CreateItemOnObject("item049", oPC, 1); //:: Tribitz's Key
CreateItemOnObject("staffoffire", oPC, 1); //:: Staff of Fire
}

View File

@@ -0,0 +1,25 @@
//::///////////////////////////////////////////////
//:: qst_tribitz_st.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Starts & tracks the "Quests for Tribitz"
quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220702
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("tribitz", 1, oPC);
}

View File

@@ -0,0 +1,30 @@
//::///////////////////////////////////////////////
//:: qst_yuanti_end.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Ends & rewards the "Homesick Yuan-ti" quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Tolen
//:: Created On: 9/9/2005 12:08:12 AM
//:://////////////////////////////////////////////
#include "pqj_inc"
#include "nw_i0_tool"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set Quest stage & update DB.
AddPersistentJournalQuestEntry("yuanti", 3, oPC);
//:: Give the PC some gold
GiveGoldToCreature(GetPCSpeaker(), 10000);
//:: Give the PC's party some XP
RewardPartyXP(1000, GetPCSpeaker());
}

View File

@@ -0,0 +1,24 @@
//::///////////////////////////////////////////////
//:: qst_yuanti_start.nss
//:: Copyright (c) 2022 Project RATDOG
//:://////////////////////////////////////////////
/*
Starts & tracks the "Homesick Yuan-ti" quest.
*/
//:://////////////////////////////////////////////
//:: Created By: Jaysyn
//:: Created On: 20220702
//:://////////////////////////////////////////////
#include "pqj_inc"
void main()
{
//:: Declare major variables
object oPC = GetPCSpeaker();
//:: Set quest stage & update DB.
AddPersistentJournalQuestEntry("yuanti", 1, oPC);
}