2024-06-14 10:48:20 -04:00
|
|
|
//#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------
|
2024-08-30 10:02:16 -04:00
|
|
|
#include "aps_include"
|
2024-06-14 10:48:20 -04:00
|
|
|
|
|
|
|
void DelayText(object oPC, int iSkillNumber);
|
|
|
|
|
|
|
|
void main()
|
|
|
|
{
|
|
|
|
object oPC = OBJECT_SELF;
|
|
|
|
object oTarget = GetLocalObject(oPC,"oTarget");
|
|
|
|
//DeleteLocalObject(oPC,"oTarget");
|
2024-08-30 10:02:16 -04:00
|
|
|
int iSkillNumber =34;
|
2024-06-14 10:48:20 -04:00
|
|
|
for (iSkillNumber; iSkillNumber>0; iSkillNumber--)
|
|
|
|
{
|
|
|
|
DelayText(oTarget,iSkillNumber);
|
|
|
|
}
|
|
|
|
SendMessageToPC(oPC,"===================================");
|
|
|
|
SendMessageToPC(oPC,"Thank you for using UOACraft v0.8a");
|
|
|
|
SendMessageToPC(oPC,"Please report any bugs to UOAbigail");
|
|
|
|
SendMessageToPC(oPC,"on the UOACraft board at NWVault.");
|
|
|
|
SendMessageToPC(oPC,"===================================");
|
|
|
|
ActionStartConversation(OBJECT_SELF,"tradebook",TRUE,FALSE);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void DelayText(object oPC, int iSkillNumber)
|
|
|
|
{
|
|
|
|
string sSkillName = "";
|
|
|
|
string sSkillTitle = "- Unskilled -";
|
|
|
|
int iSkillValue = 0;
|
|
|
|
string sPCName = GetName(oPC);
|
|
|
|
|
|
|
|
|
|
|
|
switch (iSkillNumber)
|
|
|
|
{
|
|
|
|
case 1:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iMiningSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Miner";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 2:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iSmeltSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Smelter";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iDigSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Digger";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 4:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iGlassSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Potter/Glassblower";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 5:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iTinkerSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Tinkerer";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 6:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iFarmSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Farmer";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 7:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iLumberjackSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Lumberjack";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 8:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iSkinningSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Skinning Pelts";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 9:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iCureSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Hide Curer";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 10:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iTanSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Leather Tanner";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 11:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iLeatherSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Leatherworker";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 12:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iAlchemySkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Alchemist";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 13:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iFishingSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Fisher";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 14:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iBeeSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Beekeeper";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 15:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iFletchingSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Fletcher";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 16:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iBowSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Bowcrafter";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 17:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iSmithSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Weaponcrafter";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 18:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iArmorSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Armorcrafter";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 19:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iPolishSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Gem Polisher";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 20:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iGemSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Gemcutter";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 21:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iGemQuarrySkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Gem Quarrier";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 22:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iTailorSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Tailor";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 23:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iSpindleSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Spindler";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 24:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iClothSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Clothmaker";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 25:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iDyeSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Cloth Dyer";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 26:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iPaperSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Papermaker";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 27:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iShroomSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Mycologist";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 28:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iScribeSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Inscriptionist";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 29:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iCookSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Cook";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 30:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iJewelSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Jewelcrafter";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 31:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iMapSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Cartographer";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 32:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iCarpentrySkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Carpenter";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 33:
|
|
|
|
{
|
2024-08-30 10:02:16 -04:00
|
|
|
iSkillValue = GetPersistentInt(oPC,"iBrewSkill","UOACraft");
|
2024-06-14 10:48:20 -04:00
|
|
|
sSkillName = "Brewmeister";
|
|
|
|
break;
|
|
|
|
}
|
2024-08-30 10:02:16 -04:00
|
|
|
case 34:
|
|
|
|
{
|
|
|
|
iSkillValue = GetPersistentInt(oPC,"iEnchantSkill","UOACraft");
|
|
|
|
sSkillName = "Enchanting";
|
|
|
|
break;
|
|
|
|
}
|
2024-06-14 10:48:20 -04:00
|
|
|
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;
|
|
|
|
}
|