82 lines
2.9 KiB
Plaintext
82 lines
2.9 KiB
Plaintext
|
#include "x2_inc_itemprop"
|
||
|
#include "tr_items_inc"
|
||
|
#include "nw_i0_tool"
|
||
|
#include "craft_inc"
|
||
|
|
||
|
void main()
|
||
|
{
|
||
|
object oSmith = GetItemActivator();
|
||
|
object oTarget = GetItemInSlot(INVENTORY_SLOT_CWEAPON_R, oSmith);
|
||
|
|
||
|
string sTag2 = GetTag(OBJECT_SELF);
|
||
|
string sIsCraftable = GetStringLeft(sTag2, 2);
|
||
|
|
||
|
string sEnhancement1 = GetStringLeft(sTag2, 3);
|
||
|
string sKeen1 = GetStringLeft(sTag2, 6);
|
||
|
string sMassiveCrit1 = GetStringLeft(sTag2, 8);
|
||
|
string sDamBonusType1 = GetStringLeft(sTag2, 6);
|
||
|
|
||
|
string sEnhancement = GetStringRight(sEnhancement1, 1);
|
||
|
string sKeen = GetStringRight(sKeen1, 1);
|
||
|
string sMassiveCrit = GetStringRight(sMassiveCrit1, 2);
|
||
|
string sDamBonusType = GetStringRight(sDamBonusType1, 1);
|
||
|
string sDamBonus = GetStringRight(sTag2, 2);
|
||
|
|
||
|
int iEnhancement = StringToInt(sEnhancement);
|
||
|
int iKeen = StringToInt(sKeen);
|
||
|
int iMassiveCrit = StringToInt(sMassiveCrit);
|
||
|
int iDamBonusType = StringToInt(sDamBonusType);
|
||
|
int iDamBonus = StringToInt(sDamBonus);
|
||
|
int nBakingSkillNumber = 0;
|
||
|
|
||
|
|
||
|
if (GetObjectType(oTarget) == OBJECT_TYPE_ITEM)
|
||
|
{
|
||
|
if (sIsCraftable == "cw")
|
||
|
{
|
||
|
IPUpgradeWeaponEnhancementBonus(oTarget, 1);
|
||
|
//Declare major variables
|
||
|
|
||
|
itemproperty ip = ItemPropertyAbilityBonus (ABILITY_STRENGTH, 1);
|
||
|
IPSafeAddItemProperty(oTarget, ip, 0.0f,X2_IP_ADDPROP_POLICY_REPLACE_EXISTING,TRUE,TRUE);
|
||
|
}
|
||
|
|
||
|
int nSkillTest, nItemsBits = 0;
|
||
|
int nWeaponSkillNumber;
|
||
|
object oPC = GetLastUsedBy();
|
||
|
|
||
|
if(HasItem(oPC, "EnchantedMithril"))
|
||
|
nItemsBits++;
|
||
|
|
||
|
if(HasItem(oPC, "Diamond"))
|
||
|
nItemsBits++;
|
||
|
|
||
|
if(HasItem(oPC, "Taulite"))
|
||
|
nItemsBits++;
|
||
|
|
||
|
//////////////////////////////////////////////////////////
|
||
|
if(nItemsBits == 3){
|
||
|
|
||
|
DestroyObject(GetItemPossessedBy(oPC, GetTag(oTarget)));
|
||
|
DestroyObject(GetItemPossessedBy(oPC, "EnchantedMithril"));
|
||
|
DestroyObject(GetItemPossessedBy(oPC, "Diamond"));
|
||
|
DestroyObject(GetItemPossessedBy(oPC, "Taulite"));
|
||
|
nWeaponSkillNumber = GetCampaignInt(GZ_AMON_CRAFT, "GZ_DB_WEAPON!", oPC);
|
||
|
AssignCommand(oPC, ActionPlayAnimation(ANIMATION_LOOPING_GET_MID, 3.0, 3.0));
|
||
|
//debug msg
|
||
|
//FloatingTextStringOnCreature(IntToString(nSkillTest = (nWoodSkillNumber+nRoll100x2)), oPC);
|
||
|
|
||
|
if(nSkillTest = (nBakingSkillNumber+nRoll100) >= DWARF_BREAD){
|
||
|
FloatingTextStringOnCreature("*You create some dwarven bread*", oPC);
|
||
|
//AmonCraftWood(oPC, nWoodSkillNumber = (nWoodSkillNumber+nRoll6));
|
||
|
CreateItemOnObject("tr_DwarfBread", oPC);
|
||
|
|
||
|
}
|
||
|
else{
|
||
|
AmonCraftBaking(oPC, nBakingSkillNumber=nBakingSkillNumber+nRoll2);
|
||
|
}}
|
||
|
else
|
||
|
FloatingTextStringOnCreature("*You may not have any black seeds, pastry or honey*", oPC);
|
||
|
}
|
||
|
|
||
|
}
|