Changed: #1304: Parsing the "guild" parameter for the actions that need it.
This commit is contained in:
parent
30221d900d
commit
8ec732ece9
1 changed files with 72 additions and 10 deletions
|
@ -511,9 +511,9 @@ class CMissionActionRecvItem : public IMissionAction
|
||||||
{
|
{
|
||||||
_SourceLine = line;
|
_SourceLine = line;
|
||||||
bool ret = true;
|
bool ret = true;
|
||||||
if ( script.size() != 2 && script.size() != 3 )
|
if ( script.size() != 2 && script.size() != 3 && script.size() != 4)
|
||||||
{
|
{
|
||||||
MISLOGSYNTAXERROR("<item> [<quantity>] [<quality>][:npc_name][:group]");
|
MISLOGSYNTAXERROR("<item> [<quantity>] [<quality>][:npc_name][:group][:guild]");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
vector<string> args;
|
vector<string> args;
|
||||||
|
@ -569,6 +569,17 @@ class CMissionActionRecvItem : public IMissionAction
|
||||||
_Group = true;
|
_Group = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// We check for the guild option
|
||||||
|
_Guild = false;
|
||||||
|
for (std::vector< std::string >::const_iterator it = script.begin(); it != script.end(); ++it)
|
||||||
|
{
|
||||||
|
if (CMissionParser::getNoBlankString(*it) == "guild")
|
||||||
|
{
|
||||||
|
_Guild = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if ( _Quantity == 0 )
|
if ( _Quantity == 0 )
|
||||||
{
|
{
|
||||||
|
@ -760,6 +771,7 @@ class CMissionActionRecvItem : public IMissionAction
|
||||||
uint16 _Quantity;
|
uint16 _Quantity;
|
||||||
CSheetId _SheetId;
|
CSheetId _SheetId;
|
||||||
bool _Group;
|
bool _Group;
|
||||||
|
bool _Guild;
|
||||||
|
|
||||||
MISSION_ACTION_GETNEWPTR(CMissionActionRecvItem)
|
MISSION_ACTION_GETNEWPTR(CMissionActionRecvItem)
|
||||||
};
|
};
|
||||||
|
@ -772,9 +784,9 @@ class CMissionActionRecvNamedItem : public IMissionAction
|
||||||
bool buildAction ( uint32 line, const std::vector< std::string > & script, CMissionGlobalParsingData & globalData, CMissionSpecificParsingData & missionData)
|
bool buildAction ( uint32 line, const std::vector< std::string > & script, CMissionGlobalParsingData & globalData, CMissionSpecificParsingData & missionData)
|
||||||
{
|
{
|
||||||
_SourceLine = line;
|
_SourceLine = line;
|
||||||
if ( script.size() != 2 && script.size() != 3 )
|
if ( script.size() != 2 && script.size() != 3 && script.size() != 4)
|
||||||
{
|
{
|
||||||
MISLOGSYNTAXERROR("<named_item> [<quantity>] [:group]");
|
MISLOGSYNTAXERROR("<named_item> [<quantity>] [:group] [:guild]");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
vector<string> args;
|
vector<string> args;
|
||||||
|
@ -813,6 +825,17 @@ class CMissionActionRecvNamedItem : public IMissionAction
|
||||||
_Group = true;
|
_Group = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// We check for the guild option
|
||||||
|
_Guild = false;
|
||||||
|
for (std::vector< std::string >::const_iterator it = script.begin(); it != script.end(); ++it)
|
||||||
|
{
|
||||||
|
if (CMissionParser::getNoBlankString(*it) == "guild")
|
||||||
|
{
|
||||||
|
_Guild = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if ( _Quantity == 0 )
|
if ( _Quantity == 0 )
|
||||||
{
|
{
|
||||||
MISLOGERROR("quantity = 0");
|
MISLOGERROR("quantity = 0");
|
||||||
|
@ -945,6 +968,7 @@ class CMissionActionRecvNamedItem : public IMissionAction
|
||||||
std::string _NamedItem;
|
std::string _NamedItem;
|
||||||
uint16 _Quantity;
|
uint16 _Quantity;
|
||||||
bool _Group;
|
bool _Group;
|
||||||
|
bool _Guild;
|
||||||
|
|
||||||
MISSION_ACTION_GETNEWPTR(CMissionActionRecvNamedItem)
|
MISSION_ACTION_GETNEWPTR(CMissionActionRecvNamedItem)
|
||||||
};
|
};
|
||||||
|
@ -1043,9 +1067,9 @@ class CMissionActionDestroyItem :
|
||||||
{
|
{
|
||||||
// Parse the line
|
// Parse the line
|
||||||
_SourceLine = line;
|
_SourceLine = line;
|
||||||
if ( script.size() != 2 && script.size() != 3)
|
if ( script.size() != 2 && script.size() != 3 && script.size() != 4)
|
||||||
{
|
{
|
||||||
MISLOGSYNTAXERROR("<item> [<quantity>] [<quality>]:[npc_name]");
|
MISLOGSYNTAXERROR("<item> [<quantity>] [<quality>]:[npc_name] [:guild]");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1060,6 +1084,17 @@ class CMissionActionDestroyItem :
|
||||||
ret= false;
|
ret= false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// We check for the guild option
|
||||||
|
_Guild = false;
|
||||||
|
for (std::vector< std::string >::const_iterator it = script.begin(); it != script.end(); ++it)
|
||||||
|
{
|
||||||
|
if (CMissionParser::getNoBlankString(*it) == "guild")
|
||||||
|
{
|
||||||
|
_Guild = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1104,6 +1139,7 @@ class CMissionActionDestroyItem :
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
TAIAlias _Npc;
|
TAIAlias _Npc;
|
||||||
|
bool _Guild;
|
||||||
|
|
||||||
MISSION_ACTION_GETNEWPTR(CMissionActionDestroyItem)
|
MISSION_ACTION_GETNEWPTR(CMissionActionDestroyItem)
|
||||||
};
|
};
|
||||||
|
@ -1607,9 +1643,9 @@ class CMissionActionRecvMoney : public IMissionAction
|
||||||
{
|
{
|
||||||
bool ret = true;
|
bool ret = true;
|
||||||
_SourceLine = line;
|
_SourceLine = line;
|
||||||
if ( script.size() != 2 )
|
if ( script.size() != 2 && script.size() != 3)
|
||||||
{
|
{
|
||||||
MISLOGSYNTAXERROR("<money> OR <item><quality><factor> *[;<item><quality><factor>]");
|
MISLOGSYNTAXERROR("<money> [: guild] OR <item><quality><factor> *[;<item><quality><factor>]");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1637,6 +1673,18 @@ class CMissionActionRecvMoney : public IMissionAction
|
||||||
ret = false;
|
ret = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// We check for the guild option
|
||||||
|
_Guild = false;
|
||||||
|
for (std::vector< std::string >::const_iterator it = script.begin(); it != script.end(); ++it)
|
||||||
|
{
|
||||||
|
if (CMissionParser::getNoBlankString(*it) == "guild")
|
||||||
|
{
|
||||||
|
_Guild = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1663,6 +1711,7 @@ class CMissionActionRecvMoney : public IMissionAction
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
uint _Amount;
|
uint _Amount;
|
||||||
|
bool _Guild;
|
||||||
|
|
||||||
MISSION_ACTION_GETNEWPTR(CMissionActionRecvMoney)
|
MISSION_ACTION_GETNEWPTR(CMissionActionRecvMoney)
|
||||||
};
|
};
|
||||||
|
@ -1675,9 +1724,9 @@ class CMissionActionRecvFame : public IMissionAction
|
||||||
bool buildAction ( uint32 line, const std::vector< std::string > & script, CMissionGlobalParsingData & globalData, CMissionSpecificParsingData & missionData)
|
bool buildAction ( uint32 line, const std::vector< std::string > & script, CMissionGlobalParsingData & globalData, CMissionSpecificParsingData & missionData)
|
||||||
{
|
{
|
||||||
_SourceLine = line;
|
_SourceLine = line;
|
||||||
if ( script.size() != 2 )
|
if ( script.size() != 2 && script.size() != 3)
|
||||||
{
|
{
|
||||||
MISLOGSYNTAXERROR("<faction> <value>");
|
MISLOGSYNTAXERROR("<faction> <value> [:guild]");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
vector<string> args;
|
vector<string> args;
|
||||||
|
@ -1700,6 +1749,18 @@ class CMissionActionRecvFame : public IMissionAction
|
||||||
MISLOGERROR("fame = 0");
|
MISLOGERROR("fame = 0");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// We check for the guild option
|
||||||
|
_Guild = false;
|
||||||
|
for (std::vector< std::string >::const_iterator it = script.begin(); it != script.end(); ++it)
|
||||||
|
{
|
||||||
|
if (CMissionParser::getNoBlankString(*it) == "guild")
|
||||||
|
{
|
||||||
|
_Guild = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1722,6 +1783,7 @@ class CMissionActionRecvFame : public IMissionAction
|
||||||
};
|
};
|
||||||
uint32 _Faction;
|
uint32 _Faction;
|
||||||
sint32 _Value;
|
sint32 _Value;
|
||||||
|
bool _Guild;
|
||||||
|
|
||||||
MISSION_ACTION_GETNEWPTR(CMissionActionRecvFame)
|
MISSION_ACTION_GETNEWPTR(CMissionActionRecvFame)
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue