diff --git a/utils/sql/git/required/2014_10_16_special_abilities_null.sql b/utils/sql/git/required/2014_10_16_special_abilities_null.sql deleted file mode 100644 index 8f92a114c..000000000 --- a/utils/sql/git/required/2014_10_16_special_abilities_null.sql +++ /dev/null @@ -1,4 +0,0 @@ -ALTER TABLE `merc_stats` MODIFY COLUMN `special_abilities` text CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL AFTER `attack_speed`; - -ALTER TABLE `npc_types` MODIFY COLUMN `special_abilities` text CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL AFTER `npcspecialattks`; - diff --git a/utils/sql/git/required/2014_10_30_special_abilities_null.sql b/utils/sql/git/required/2014_10_30_special_abilities_null.sql new file mode 100644 index 000000000..c9e52011d --- /dev/null +++ b/utils/sql/git/required/2014_10_30_special_abilities_null.sql @@ -0,0 +1,4 @@ +ALTER TABLE `merc_stats` MODIFY COLUMN `special_abilities` text CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL; + +ALTER TABLE `npc_types` MODIFY COLUMN `special_abilities` text CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL; + diff --git a/zone/questmgr.cpp b/zone/questmgr.cpp index 90f0d370d..7757d0a70 100644 --- a/zone/questmgr.cpp +++ b/zone/questmgr.cpp @@ -1290,9 +1290,9 @@ void QuestManager::signal(int npc_id, int wait_ms) { void QuestManager::setglobal(const char *varname, const char *newvalue, int options, const char *duration) { QuestManagerCurrentQuestVars(); - int qgZoneid=zone->GetZoneID(); - int qgCharid=0; - int qgNpcid = owner->GetNPCTypeID(); + int qgZoneid = zone->GetZoneID(); + int qgCharid = 0; + int qgNpcid = owner ? owner->GetNPCTypeID() : 0; // encounter scripts don't have an owner /* options value determines the availability of global variables to NPCs when a quest begins ------------------------------------------------------------------ @@ -1410,9 +1410,9 @@ void QuestManager::targlobal(const char *varname, const char *value, const char void QuestManager::delglobal(const char *varname) { QuestManagerCurrentQuestVars(); - int qgZoneid=zone->GetZoneID(); - int qgCharid=0; - int qgNpcid=owner->GetNPCTypeID(); + int qgZoneid = zone->GetZoneID(); + int qgCharid = 0; + int qgNpcid = owner ? owner->GetNPCTypeID() : 0; // encounter scripts don't have an owner if (initiator && initiator->IsClient()) // some events like waypoint and spawn don't have a player involved qgCharid=initiator->CharacterID();