//#include "_persist_01a" //The following comment added Aug. 19, 2003, by UOAbigail // //Original script written by UOAbigail for UOACraft v02x and up //Script modified to work with conversation menu instead of floaty text //by Mikel. This is a 100% improvement over the floaty text version. // //Be sure to check out the Somnium module in the Social Servers section //of GameSpy to see UOAcraft in action, as well as many other systems //scripted by Mikel. ;) (Sorry...Had to plug yer mod here ;) // //Modified script is included in this release via permission from Mikel. // //Script modified sleightly for improved formatting and inclusion of version //by UOAbigail on Aug. 19, 2003 // //------End comment------ void DelayText(object oPC, int iSkillNumber); void DelayText2(object oPC, int iSkillNumber); void main() { object oPC = OBJECT_SELF; object oTarget = GetLocalObject(oPC,"oTarget"); int iSkillNumber =33; for (iSkillNumber; iSkillNumber>0; iSkillNumber--) { if (oTarget==OBJECT_INVALID)DelayText(oPC,iSkillNumber); if (oTarget!=OBJECT_INVALID) { if (oTarget==oPC)DelayText(oTarget,iSkillNumber); if (oTarget!=oPC)DelayText2(oTarget,iSkillNumber); } } } void DelayText(object oPC, int iSkillNumber) { string sSkillName = ""; string sSkillTitle = "- Unskilled -"; int iSkillValue = 0; switch (iSkillNumber) { case 1: { iSkillValue = GetCampaignInt("UOACraft","iMiningSkill",oPC); sSkillName = "Mining"; break; } case 2: { iSkillValue = GetCampaignInt("UOACraft","iSmeltSkill",oPC); sSkillName = "Smelting"; break; } case 3: { iSkillValue = GetCampaignInt("UOACraft","iDigSkill",oPC); sSkillName = "Digging"; break; } case 4: { iSkillValue = GetCampaignInt("UOACraft","iGlassSkill",oPC); sSkillName = "Pottery and Glassblowing"; break; } case 5: { iSkillValue = GetCampaignInt("UOACraft","iTinkerSkill",oPC); sSkillName = "Tinkering"; break; } case 6: { iSkillValue = GetCampaignInt("UOACraft","iFarmSkill",oPC); sSkillName = "Farming"; break; } case 7: { iSkillValue = GetCampaignInt("UOACraft","iLumberjackSkill",oPC); sSkillName = "Lumberjacking"; break; } case 8: { iSkillValue = GetCampaignInt("UOACraft","iSkinningSkill",oPC); sSkillName = "Skinning Pelts"; break; } case 9: { iSkillValue = GetCampaignInt("UOACraft","iCureSkill",oPC); sSkillName = "Curing Hides"; break; } case 10: { iSkillValue = GetCampaignInt("UOACraft","iTanSkill",oPC); sSkillName = "Tanning Leather"; break; } case 11: { iSkillValue = GetCampaignInt("UOACraft","iLeatherSkill",oPC); sSkillName = "Leatherworking"; break; } case 12: { iSkillValue = GetCampaignInt("UOACraft","iAlchemySkill",oPC); sSkillName = "Alchemy"; break; } case 13: { iSkillValue = GetCampaignInt("UOACraft","iFishingSkill",oPC); sSkillName = "Fishing"; break; } case 14: { iSkillValue = GetCampaignInt("UOACraft","iBeeSkill",oPC); sSkillName = "Beekeeping"; break; } case 15: { iSkillValue = GetCampaignInt("UOACraft","iFletchingSkill",oPC); sSkillName = "Fletching"; break; } case 16: { iSkillValue = GetCampaignInt("UOACraft","iBowSkill",oPC); sSkillName = "Bowcraft"; break; } case 17: { iSkillValue = GetCampaignInt("UOACraft","iSmithSkill",oPC); sSkillName = "Weaponcrafting"; break; } case 18: { iSkillValue = GetCampaignInt("UOACraft","iArmorSkill",oPC); sSkillName = "Armorcrafting"; break; } case 19: { iSkillValue = GetCampaignInt("UOACraft","iPolishSkill",oPC); sSkillName = "Gem Polishing"; break; } case 20: { iSkillValue = GetCampaignInt("UOACraft","iGemSkill",oPC); sSkillName = "Gemcutting"; break; } case 21: { iSkillValue = GetCampaignInt("UOACraft","iGemQuarrySkill",oPC); sSkillName = "Gem Quarrying"; break; } case 22: { iSkillValue = GetCampaignInt("UOACraft","iTailorSkill",oPC); sSkillName = "Tailoring"; break; } case 23: { iSkillValue = GetCampaignInt("UOACraft","iSpindleSkill",oPC); sSkillName = "Spindling"; break; } case 24: { iSkillValue = GetCampaignInt("UOACraft","iClothSkill",oPC); sSkillName = "Clothmaking"; break; } case 25: { iSkillValue = GetCampaignInt("UOACraft","iDyeSkill",oPC); sSkillName = "Cloth Dyeing"; break; } case 26: { iSkillValue = GetCampaignInt("UOACraft","iPaperSkill",oPC); sSkillName = "Papermaking"; break; } case 27: { iSkillValue = GetCampaignInt("UOACraft","iShroomSkill",oPC); sSkillName = "Mycology"; break; } case 28: { iSkillValue = GetCampaignInt("UOACraft","iScribeSkill",oPC); sSkillName = "Inscription"; break; } case 29: { iSkillValue = GetCampaignInt("UOACraft","iCookSkill",oPC); sSkillName = "Cooking"; break; } case 30: { iSkillValue = GetCampaignInt("UOACraft","iJewelSkill",oPC); sSkillName = "Jewelcraft"; break; } case 31: { iSkillValue = GetCampaignInt("UOACraft","iMapSkill",oPC); sSkillName = "Cartography"; break; } case 32: { iSkillValue = GetCampaignInt("UOACraft","iCarpentrySkill",oPC); sSkillName = "Carpentry"; break; } case 33: { iSkillValue = GetCampaignInt("UOACraft","iBrewSkill",oPC); sSkillName = "Brewing"; break; } default:{return;} } if (iSkillValue >=100) sSkillTitle = "- Neophyte -"; if (iSkillValue >=200) sSkillTitle = "- Neophyte -"; if (iSkillValue >=300) sSkillTitle = "- Apprentice -"; if (iSkillValue >=400) sSkillTitle = "- Apprentice -"; if (iSkillValue >=500) sSkillTitle = "- Apprentice -"; if (iSkillValue >=600) sSkillTitle = "- Journeyman -"; if (iSkillValue >=700) sSkillTitle = "- Expert -"; if (iSkillValue >=800) sSkillTitle = "- Adept -"; if (iSkillValue >=900) sSkillTitle = "- Master -"; if (iSkillValue==1000) sSkillTitle = "- Grandmaster -"; string sOldSkill = ""; string sOldSkill2 = ""; sOldSkill2 = IntToString(iSkillValue); sOldSkill = "."+GetStringRight(sOldSkill2,1); if (iSkillValue > 9) { sOldSkill = GetStringLeft(sOldSkill2,GetStringLength(sOldSkill2)-1)+sOldSkill; } else { sOldSkill = "0"+sOldSkill; } string sMessage = sSkillName + " " + sSkillTitle + " (" + sOldSkill + ")"; SetCustomToken(3000+iSkillNumber,sMessage); return; } void DelayText2(object oPC, int iSkillNumber) { string sSkillName = ""; string sSkillTitle = "- Unskilled -"; int iSkillValue = 0; string sPCName = GetName(oPC); switch (iSkillNumber) { case 1: { iSkillValue = GetCampaignInt("UOACraft","iMiningSkill",oPC); sSkillName = "Mining"; break; } case 2: { iSkillValue = GetCampaignInt("UOACraft","iSmeltSkill",oPC); sSkillName = "Smelting"; break; } case 3: { iSkillValue = GetCampaignInt("UOACraft","iDigSkill",oPC); sSkillName = "Digging"; break; } case 4: { iSkillValue = GetCampaignInt("UOACraft","iGlassSkill",oPC); sSkillName = "Pottery and Glassblowing"; break; } case 5: { iSkillValue = GetCampaignInt("UOACraft","iTinkerSkill",oPC); sSkillName = "Tinkering"; break; } case 6: { iSkillValue = GetCampaignInt("UOACraft","iFarmSkill",oPC); sSkillName = "Farming"; break; } case 7: { iSkillValue = GetCampaignInt("UOACraft","iLumberjackSkill",oPC); sSkillName = "Lumberjacking"; break; } case 8: { iSkillValue = GetCampaignInt("UOACraft","iSkinningSkill",oPC); sSkillName = "Skinning Pelts"; break; } case 9: { iSkillValue = GetCampaignInt("UOACraft","iCureSkill",oPC); sSkillName = "Curing Hides"; break; } case 10: { iSkillValue = GetCampaignInt("UOACraft","iTanSkill",oPC); sSkillName = "Tanning Leather"; break; } case 11: { iSkillValue = GetCampaignInt("UOACraft","iLeatherSkill",oPC); sSkillName = "Leatherworking"; break; } case 12: { iSkillValue = GetCampaignInt("UOACraft","iAlchemySkill",oPC); sSkillName = "Alchemy"; break; } case 13: { iSkillValue = GetCampaignInt("UOACraft","iFishingSkill",oPC); sSkillName = "Fishing"; break; } case 14: { iSkillValue = GetCampaignInt("UOACraft","iBeeSkill",oPC); sSkillName = "Beekeeping"; break; } case 15: { iSkillValue = GetCampaignInt("UOACraft","iFletchingSkill",oPC); sSkillName = "Fletching"; break; } case 16: { iSkillValue = GetCampaignInt("UOACraft","iBowSkill",oPC); sSkillName = "Bowcraft"; break; } case 17: { iSkillValue = GetCampaignInt("UOACraft","iSmithSkill",oPC); sSkillName = "Weaponcrafting"; break; } case 18: { iSkillValue = GetCampaignInt("UOACraft","iArmorSkill",oPC); sSkillName = "Armorcrafting"; break; } case 19: { iSkillValue = GetCampaignInt("UOACraft","iPolishSkill",oPC); sSkillName = "Gem Polishing"; break; } case 20: { iSkillValue = GetCampaignInt("UOACraft","iGemSkill",oPC); sSkillName = "Gemcutting"; break; } case 21: { iSkillValue = GetCampaignInt("UOACraft","iGemQuarrySkill",oPC); sSkillName = "Gem Quarrying"; break; } case 22: { iSkillValue = GetCampaignInt("UOACraft","iTailorSkill",oPC); sSkillName = "Tailoring"; break; } case 23: { iSkillValue = GetCampaignInt("UOACraft","iSpindleSkill",oPC); sSkillName = "Spindling"; break; } case 24: { iSkillValue = GetCampaignInt("UOACraft","iClothSkill",oPC); sSkillName = "Clothmaking"; break; } case 25: { iSkillValue = GetCampaignInt("UOACraft","iDyeSkill",oPC); sSkillName = "Cloth Dyeing"; break; } case 26: { iSkillValue = GetCampaignInt("UOACraft","iPaperSkill",oPC); sSkillName = "Papermaking"; break; } case 27: { iSkillValue = GetCampaignInt("UOACraft","iShroomSkill",oPC); sSkillName = "Mycology"; break; } case 28: { iSkillValue = GetCampaignInt("UOACraft","iScribeSkill",oPC); sSkillName = "Inscription"; break; } case 29: { iSkillValue = GetCampaignInt("UOACraft","iCookSkill",oPC); sSkillName = "Cooking"; break; } case 30: { iSkillValue = GetCampaignInt("UOACraft","iJewelSkill",oPC); sSkillName = "Jewelcraft"; break; } case 31: { iSkillValue = GetCampaignInt("UOACraft","iMapSkill",oPC); sSkillName = "Cartography"; break; } case 32: { iSkillValue = GetCampaignInt("UOACraft","iCarpentrySkill",oPC); sSkillName = "Carpentry"; break; } case 33: { iSkillValue = GetCampaignInt("UOACraft","iBrewSkill",oPC); sSkillName = "Brewmeister"; break; } default:{return;} } //------------------------------------------------------------------------------------ //This section is the 'fudge' section of the code.. //The purpose of this section is to allow a chance for skill //reporting of another player's attained skills is 'off' by a little //because the PC annot know for sure the exact skill attained by the other player //because his/her perception of the other player is based on rumors, reputation, etc //You may opt to remove this section as it is not necessary. if (Random(1000)<500) { iSkillValue = iSkillValue+Random(150); if (iSkillValue>1000)iSkillValue=1000; } else { iSkillValue = iSkillValue-Random(150); if (iSkillValue<0)iSkillValue=0; } //------------------------------------------------------------------------------------ sSkillTitle = "an Unskilled "; if (iSkillValue >=100) sSkillTitle = "a Neophyte "; if (iSkillValue >=200) sSkillTitle = "a Neophyte "; if (iSkillValue >=300) sSkillTitle = "an Apprentice "; if (iSkillValue >=400) sSkillTitle = "an Apprentice "; if (iSkillValue >=500) sSkillTitle = "an Apprentice "; if (iSkillValue >=600) sSkillTitle = "a Journeyman "; if (iSkillValue >=700) sSkillTitle = "an Expert "; if (iSkillValue >=800) sSkillTitle = "an Adept "; if (iSkillValue >=900) sSkillTitle = "a Master "; if (iSkillValue==1000) sSkillTitle = "a Grandmaster "; string sOldSkill = ""; string sOldSkill2 = ""; sOldSkill2 = IntToString(iSkillValue); sOldSkill = "."+GetStringRight(sOldSkill2,1); if (iSkillValue > 9) { sOldSkill = GetStringLeft(sOldSkill2,GetStringLength(sOldSkill2)-1)+sOldSkill; } else { sOldSkill = "0"+sOldSkill; } string sMessage = "You believe that "+sPCName+" is "+sSkillTitle+" "+sSkillName+"."; SetCustomToken(3000+iSkillNumber,sMessage); return; }