Log in

View Full Version : Check XP Til level?



Adobe
06-19-2012, 01:43 AM
Way to check XP til level, had it working before but kept checking after each catch. Which slowed it down a bit.

bolshak25
06-19-2012, 01:52 AM
Way to check XP til level, had it working before but kept checking after each catch. Which slowed it down a bit.


Function SetXP(Bar,Skill:Integer):Boolean;
var
DTM,x,y:Integer;
DTMBox,CounterBox,SkillBox:TBox;
begin
Result:=False;
ToggleXPBar(True);
case Bar of
1:
begin
DTMBox.X1:= 490;
DTMBox.Y1:= 0;
DTMBox.X2:= 512;
DTMBox.Y2:= 25;
CounterBox.X1:= 240;
CounterBox.Y1:= 24;
CounterBox.X2:= 290
CounterBox.Y2:= 30;
end;
2:
begin
DTMBox.X1:= 490;
DTMBox.Y1:= 25;
DTMBox.X2:= 512;
DTMBox.Y2:= 50;
CounterBox.X1:= 340;
CounterBox.Y1:= 24;
CounterBox.X2:= 390;
CounterBox.Y2:= 30;
end;
3:
begin
DTMBox.X1:= 490;
DTMBox.Y1:= 50;
DTMBox.X2:= 512;
DTMBox.Y2:= 75;
CounterBox.X1:= 440;
CounterBox.Y1:= 24;
CounterBox.X2:= 490;
CounterBox.Y2:= 30;
end;
end;
case Skill of
Skill_Attack :
begin
DTM := DTMFromString('mQwAAAHicY2ZgYPjKyMDwFoh/A7E6kK8PxApA/PPbWYa2OHWGH1/PMPAD+TDMiISBAACiVQoK');
SkillBox.X1:= 235;
SkillBox.Y1:= 80;
SkillBox.X2:= 259;
SkillBox.Y2:= 104;
end;
Skill_Strength :
begin
DTM := DTMFromString('mWAAAAHicY2FgYPjEyMDwmxFCfwdiR6CYNR BbArEbEB8s8mE43RTCcLo3k6Hax4KBHyiGjBnRMAgAAH7TCvo= ');
SkillBox.X1:= 265;
SkillBox.Y1:= 80;
SkillBox.X2:= 289;
SkillBox.Y2:= 104;
end;
Skill_Defence :
begin
DTM := DTMFromString('mbQAAAHicY2VgYPjCyMDwAYh/QjGILQAUF4ZiHihuqCljiImLB+PWji4w5geKo2NGLBgMAHFFDE E=');
SkillBox.X1:= 295;
SkillBox.Y1:= 80;
SkillBox.X2:= 319;
SkillBox.Y2:= 104;
end;
Skill_Range :
begin
DTM := DTMFromString('mWAAAAHicY2FgYPjDyMDwFoj/AfEXIFYGiikCsREQawHxytPXGAwMjRlyk3wYshM9GfiBYsiYEQ 2DAABHPwnS');
SkillBox.X1:= 325;
SkillBox.Y1:= 80;
SkillBox.X2:= 349;
SkillBox.Y2:= 104;
end;
Skill_Prayer :
begin
DTM := DTMFromString('mbQAAAHicY2VgYPjCyMDwAYi/AvEvRghfkwGCVaG0HhD/+fOT4dCNpwyHXv1kWH3lNcPUE88Y+IHi6JgRCwYDAOwvErI=') ;
SkillBox.X1:= 415;
SkillBox.Y1:= 80;
SkillBox.X2:= 439;
SkillBox.Y2:= 104;
end;
Skill_Magic :
begin
DTM := DTMFromString('mWAAAAHicY2FgYPjKCMEfgPgXEDsBxayB2B 2I3YBYRN2LQc2tgSGt3IpBVlKcgR8ohowZ0TAIAAD1CAf8');
SkillBox.X1:= 355;
SkillBox.Y1:= 80;
SkillBox.X2:= 379;
SkillBox.Y2:= 104;
end;
Skill_RuneCrafting :
begin
DTM := DTMFromString('mQwAAAHicY2ZgYPjMyMDwHYg/ALEAkM8DxKJA/GdzHMOfn68ZqkpSGPiBfBhmRMJAAACPOQmB');
SkillBox.X1:= 235;
SkillBox.Y1:= 140;
SkillBox.X2:= 259;
SkillBox.Y2:= 164;
end;
Skill_Construction :
begin
DTM := DTMFromString('mWAAAAHicY2FgYPjCyMDwFYjfAPFvINYBiq kDsS4Q6wPxhVUVDH/+/gHjvGBDBn6gGDJmRMMgAADwoQ2W');
SkillBox.X1:= 325;
SkillBox.Y1:= 140;
SkillBox.X2:= 349;
SkillBox.Y2:= 164;
end;
Skill_Dungeoneering :
begin
DTM := DTMFromString('mWAAAAHicY2FgYPjGyMDwEYj/APEbIHYCirkBsSsQ2wFxBjMDw+I8ZYafAdwMf/+eYOAHiiFjRjQMAgBo2ArY');
SkillBox.X1:= 415;
SkillBox.Y1:= 140;
SkillBox.X2:= 439;
SkillBox.Y2:= 164;
end;
Skill_Hitpoints :
begin
DTM := DTMFromString('mQwAAAHicY2ZgYPjCyMDwDoh/AbEgkM8DxLxA/NrQkGF/bi4Y8wP5MMyIhIEAAE9jB7w=');
SkillBox.X1:= 385;
SkillBox.Y1:= 80;
SkillBox.X2:= 409;
SkillBox.Y2:= 104;
end;
Skill_Agility :
begin
DTM := DTMFromString('mWAAAAHicY2FgYPjCyMDwHYg/AvFPIHYAilkCsTsQuwLxsXZLhh5fZYbby5QYjlaKMvADxZAxIx oGAQBsdQqb');
SkillBox.X1:= 445;
SkillBox.Y1:= 80;
SkillBox.X2:= 469;
SkillBox.Y2:= 104;
end;
Skill_Herblore :
begin
DTM := DTMFromString('mWAAAAHicY2FgYPjCyMDwFog/A/FvIBZhgGAeKG2SKMEQO1eRoeCiDBjzA8WQMSMaBgEAC9wI4g== ');
SkillBox.X1:= 475
SkillBox.Y1:= 80;
SkillBox.X2:= 499
SkillBox.Y2:= 104;
end;
Skill_Thieving :
begin
DTM := DTMFromString('mbQAAAHicY2VgYPjKyMDwHoj/APFPIH4HxJpAcVUgVgFiLSi+fv0Cw58/Pxk+fnjH4O/vz+Dv58/ADxRHx4xYMBgAAGR0D/8=');
SkillBox.X1:= 235;
SkillBox.Y1:= 110;
SkillBox.X2:= 259;
SkillBox.Y2:= 134;
end;
Skill_Crafting :
begin
DTM := DTMFromString('mbQAAAHicY2VgYPjEyMDwFop/QbETUNwWiD2htAcQJ7spMphIijO0xakzNNSUMbz+9YeBHyiOjh mxYDAAAJpzDPQ=');
SkillBox.X1:= 265;
SkillBox.Y1:= 110;
SkillBox.X2:= 289;
SkillBox.Y2:= 134;
end;
Skill_Fletching :
begin
DTM := DTMFromString('mWAAAAHicY2FgYHjHyMDwC4g/APFvIBYGirEBsSQQ8wJxhZ4Zw66d2ximz5vNYJRymoEfKIaMGd EwCAAAWFUKkQ==');
SkillBox.X1:= 295;
SkillBox.Y1:= 110;
SkillBox.X2:= 319;
SkillBox.Y2:= 134;
end;
Skill_Slayer :
begin
DTM := DTMFromString('mWAAAAHicY2FgYPjIyMDwHoi/Q7E+UEwTiFWA2BCIz+5YwPDj3jGGP3//MMxrL2bgB4ohY0Y0DAIAAqkOEg==');
SkillBox.X1:= 265;
SkillBox.Y1:= 140;
SkillBox.X2:= 289;
SkillBox.Y2:= 164;
end;
Skill_Hunter :
begin
DTM := DTMFromString('mbQAAAHicY2VgYPjKyMDwEYh/APEfIH4HxK5AcTsgtgViRyj2VOBn2FJmyTA7zZTh1+mFDO0xRg z8QHF0zIgFgwEAp/4M8Q==');
SkillBox.X1:= 355;
SkillBox.Y1:= 140;
SkillBox.X2:= 379;
SkillBox.Y2:= 164;
end;
Skill_Mining :
begin
DTM := DTMFromString('mbQAAAHicY2VgYPjIyMDwFoh/AfEXIP4HxEJAcXEg5gZiNiDmB+LV+dYMp5qCGdZu2cHw589Phu NnzoLF0TEjFgwGAC32D8w=');
SkillBox.X1:= 325;
SkillBox.Y1:= 110;
SkillBox.X2:= 349;
SkillBox.Y2:= 134;
end;
Skill_Smithing :
begin
DTM := DTMFromString('mbQAAAHicY2VgYPjEyMDwDoi/AfF7IP4KxFpAcVUo1oPipr7pDI4ubmCcmZXDUFBcysAPFEfHjF gwGAAAX1ILuQ==');
SkillBox.X1:= 355;
SkillBox.Y1:= 110;
SkillBox.X2:= 379;
SkillBox.Y2:= 134;
end;
Skill_Fishing :
begin
DTM := DTMFromString('mWAAAAHicY2FgYPjCyMDwB4jfAfFbIPYAir kAsRsQ24FweTuDtIY5g7FLLINOWCoDP1AMGTOiYRAAAA/hCJU=');
SkillBox.X1:= 385;
SkillBox.Y1:= 110;
SkillBox.X2:= 409;
SkillBox.Y2:= 134;
end;
Skill_Cooking :
begin
DTM := DTMFromString('mbQAAAHicY2VgYPjCCMFvgfg3EH8CYiGgOB cQC0KxKBDXZwcz/GqwYmhoaGSQlRRnyE/2Y+AHiqNjRiwYDABGXgtP');
SkillBox.X1:= 415;
SkillBox.Y1:= 110;
SkillBox.X2:= 439;
SkillBox.Y2:= 134;
end;
Skill_FireMaking :
begin
DTM := DTMFromString('mbQAAAHicY2VgYPjGyMDwCYh/AvFHKK0NFFeFYgMo/vF8I8MHMz6GeX4qDKvzrRlW99Yw8APF0TEjFgwGAOFRDdg=');
SkillBox.X1:= 445;
SkillBox.Y1:= 110;
SkillBox.X2:= 469;
SkillBox.Y2:= 134;
end;
Skill_WoodCutting :
begin
DTM := DTMFromString('mggAAAHicY2NgYPjCyMDwHoh/AfFHIP4GxL+B2AUoZwvENkDsBcTeMKwpx2DRwMxgXa3PUOquxN AdY8OQ7KbIwA+Uw4YZcWAIAACPRwzG');
SkillBox.X1:= 475;
SkillBox.Y1:= 110;
SkillBox.X2:= 499;
SkillBox.Y2:= 134;
end;
Skill_Farming :
begin
DTM := DTMFromString('mWAAAAHicY2FgYPjGyMDwBYh/AvE7IBYBivEDMQ8QCwDxn79/GKKjohhMTAwZps6YA5ZDxoxoGAQAa10Kvw==');
SkillBox.X1:= 295;
SkillBox.Y1:= 140;
SkillBox.X2:= 319;
SkillBox.Y2:= 164;
end;
Skill_Summoning :
begin
DTM := DTMFromString('mbQAAAHicY2VgYPjMyMDwA4jfQTGIrQMUVw VibSBWBmI9IDawcWS48OEHQ2bzBIaZBy4xFK45wcAPFEfHjFgw GAAABhIO2A==');
SkillBox.X1:= 385;
SkillBox.Y1:= 140;
SkillBox.X2:= 409;
SkillBox.Y2:= 164;
end;
SKILL_ALLCOMBAT :
begin
DTM := DTMFromString('mbQAAAHicY2VgYPjKyMDwG4jfAfF7IP4JxP ZAcSsgtgBiFyB2BeI7Nx8yXLp4kuHnn18M77tEGP5e8GbgB4qj Y0YsGAwAztIR8Q==');
SkillBox.X1:= 445;
SkillBox.Y1:= 140;
SkillBox.X2:= 469;
SkillBox.Y2:= 164;
end;
SKILL_EVERYSKILL :
begin
DTM := DTMFromString('mQwAAAHicY2ZgYPjGyMDwDoj/ALEQkC8AxKJAHDQxlmGHkxODacBiBn4gH4YZkTAQAAA1rwby') ;
SkillBox.X1:= 475;
SkillBox.Y1:= 140;
SkillBox.X2:= 499;
SkillBox.Y2:= 164;
end;
end;


If not FindDTM(DTM,x,y,DTMBox.X1,DTMBox.Y1,DTMBox.X2,DTMB ox.Y2) then
begin
Mouse(532,63,6,6,mouse_Right); //Click Setup
Wait(1000+Random(500));
ChooseOption('tup'); //Click Setup
Wait(1000+Random(500));
MouseBox(CounterBox.X1,CounterBox.Y1,CounterBox.X2 ,CounterBox.Y2,mouse_Left); //Click Counter
Wait(1000+Random(500));
MouseBox(SkillBox.X1,SkillBox.Y1,SkillBox.X2,Skill Box.Y2,mouse_Left); //Click Skill
Wait(1000+Random(500));
MouseBox(315,150,335,160,mouse_Left);//Click Yes
Wait(1000+Random(500));
Mouse(503,13,4,4,Mouse_left); //exit
end;
FreeDTM(DTM);
Result :=True;
end;

Procedure Arrays;
begin
SetLength(XPToNN,HowManyPlayers*3);
SetLength(TimeToNN,HowManyPlayers*3);
SetLength(CounterOrig,HowManyPlayers*3);
SetLength(XPTillLVL,HowManyPlayers*3);
SetLength(XPPast,HowManyPlayers*3);
SetLength(XPPerLVL,HowManyPlayers*3);
SetLength(Percent,HowManyPlayers*3);
SetLength(PercentNN,HowManyPlayers*3);
SetLength(CounterNow,HowManyPlayers*3);
SetLength(XPGain,HowManyPlayers*3);
SetLength(XPX,HowManyPlayers*3);
SetLength(GoalLvl,HowManyPlayers*3);
SetLength(TotalXP,HowManyPlayers*3);
SetLength(PastXP,HowManyPlayers*3);
SetLength(OrigXP,HowManyPlayers*3);
SetLength(NextXP,HowManyPlayers*3);
SetLength(Lvl,HowManyPlayers*3);
SetLength(TimeToLVL,HowManyPlayers*3);
SetLength(XPRate,HowManyPlayers*3);
SetLength(LVLH,HowManyPlayers*3);
SetLength(LVLM,HowManyPlayers*3);
SetLength(NNH,HowManyPlayers*3);
SetLength(NNM,HowManyPlayers*3);
SetLength(Sec,HowManyPlayers);
end;
Procedure XP(Bar,Skill,Time:Integer);
begin
if Time=1 then
begin
Writeln('Setting Up Bar ' + IntToStr(Bar));
SetXP(Bar,Skill);
GoalLvl[(CurrentPlayer*3)-1+Bar]:= Players[CurrentPlayer].Integers[Bar];
TotalXP[(CurrentPlayer*3)-1+Bar]:=GetXP(Skill);
OrigXP[(CurrentPlayer*3)-1+Bar]:=TotalXP[(CurrentPlayer*3)-1+Bar];
ToggleXPBar(True);
CounterOrig[(CurrentPlayer*3)-1+Bar]:=GetXPBar(Bar);
end;
if not (GetXPBar(Bar) >= CounterNow[(CurrentPlayer*3)-1+Bar]) then
exit;
CounterNow[(CurrentPlayer*3)-1+Bar]:=GetXPBar(Bar);
XPGain[(CurrentPlayer*3)-1+Bar]:=(CounterNow[(CurrentPlayer*3)-1+Bar]-CounterOrig[(CurrentPlayer*3)-1+Bar]);
TotalXP[(CurrentPlayer*3)-1+Bar]:=(XPGain[(CurrentPlayer*3)-1+Bar]+OrigXP[(CurrentPlayer*3)-1+Bar]);
Case TotalXP[(CurrentPlayer*3)-1+Bar] Of
0..82 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=1; PastXP[(CurrentPlayer*3)-1+Bar]:=0; NextXP[(CurrentPlayer*3)-1+Bar]:=83; end;
83..173 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=2; PastXP[(CurrentPlayer*3)-1+Bar]:=83; NextXP[(CurrentPlayer*3)-1+Bar]:=174; end;
174..275 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=3; PastXP[(CurrentPlayer*3)-1+Bar]:=174; NextXP[(CurrentPlayer*3)-1+Bar]:=276; end;
276..387 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=4; PastXP[(CurrentPlayer*3)-1+Bar]:=276; NextXP[(CurrentPlayer*3)-1+Bar]:=388; end;
388..511 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=5; PastXP[(CurrentPlayer*3)-1+Bar]:=388; NextXP[(CurrentPlayer*3)-1+Bar]:=512; end;
512..649 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=6; PastXP[(CurrentPlayer*3)-1+Bar]:=512; NextXP[(CurrentPlayer*3)-1+Bar]:=650; end;
650..800 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=7; PastXP[(CurrentPlayer*3)-1+Bar]:=650; NextXP[(CurrentPlayer*3)-1+Bar]:=801; end;
801..968 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=8; PastXP[(CurrentPlayer*3)-1+Bar]:=801; NextXP[(CurrentPlayer*3)-1+Bar]:=969; end;
969..1153 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=9; PastXP[(CurrentPlayer*3)-1+Bar]:=969; NextXP[(CurrentPlayer*3)-1+Bar]:=1154; end;
1154..1357 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=10; PastXP[(CurrentPlayer*3)-1+Bar]:=1154; NextXP[(CurrentPlayer*3)-1+Bar]:=1358; end;
1358..1583 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=11; PastXP[(CurrentPlayer*3)-1+Bar]:=1358; NextXP[(CurrentPlayer*3)-1+Bar]:=1584; end;
1584..1832 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=12; PastXP[(CurrentPlayer*3)-1+Bar]:=1584; NextXP[(CurrentPlayer*3)-1+Bar]:=1833; end;
1833..2106 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=13; PastXP[(CurrentPlayer*3)-1+Bar]:=1833; NextXP[(CurrentPlayer*3)-1+Bar]:=2107; end;
2107..2410 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=14; PastXP[(CurrentPlayer*3)-1+Bar]:=2107; NextXP[(CurrentPlayer*3)-1+Bar]:=2411; end;
2411..2745 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=15; PastXP[(CurrentPlayer*3)-1+Bar]:=2411; NextXP[(CurrentPlayer*3)-1+Bar]:=2746; end;
2746..3114 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=16; PastXP[(CurrentPlayer*3)-1+Bar]:=2746; NextXP[(CurrentPlayer*3)-1+Bar]:=3115; end;
3115..3522 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=17; PastXP[(CurrentPlayer*3)-1+Bar]:=3115; NextXP[(CurrentPlayer*3)-1+Bar]:=3523; end;
3523..3972 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=18; PastXP[(CurrentPlayer*3)-1+Bar]:=3523; NextXP[(CurrentPlayer*3)-1+Bar]:=3973; end;
3973..4469 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=19; PastXP[(CurrentPlayer*3)-1+Bar]:=3973; NextXP[(CurrentPlayer*3)-1+Bar]:=4470; end;
4470..5017 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=20; PastXP[(CurrentPlayer*3)-1+Bar]:=4470; NextXP[(CurrentPlayer*3)-1+Bar]:=5018; end;
5018..5623 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=21; PastXP[(CurrentPlayer*3)-1+Bar]:=5018; NextXP[(CurrentPlayer*3)-1+Bar]:=5624; end;
5624..6290 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=22; PastXP[(CurrentPlayer*3)-1+Bar]:=5624; NextXP[(CurrentPlayer*3)-1+Bar]:=6291; end;
6291..7027 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=23; PastXP[(CurrentPlayer*3)-1+Bar]:=6291; NextXP[(CurrentPlayer*3)-1+Bar]:=7028; end;
7028..7841 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=24; PastXP[(CurrentPlayer*3)-1+Bar]:=7028; NextXP[(CurrentPlayer*3)-1+Bar]:=7842; end;
7842..8739 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=25; PastXP[(CurrentPlayer*3)-1+Bar]:=7842; NextXP[(CurrentPlayer*3)-1+Bar]:=8740; end;
8740..9729 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=26; PastXP[(CurrentPlayer*3)-1+Bar]:=8740; NextXP[(CurrentPlayer*3)-1+Bar]:=9730; end;
9730..10823 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=27; PastXP[(CurrentPlayer*3)-1+Bar]:=9730; NextXP[(CurrentPlayer*3)-1+Bar]:=10824; end;
10824..12030 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=28; PastXP[(CurrentPlayer*3)-1+Bar]:=10824; NextXP[(CurrentPlayer*3)-1+Bar]:=12031; end;
12031..13362 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=29; PastXP[(CurrentPlayer*3)-1+Bar]:=12031; NextXP[(CurrentPlayer*3)-1+Bar]:=13363; end;
13363..14832 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=30; PastXP[(CurrentPlayer*3)-1+Bar]:=13363; NextXP[(CurrentPlayer*3)-1+Bar]:=14833; end;
14833..16455 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=31; PastXP[(CurrentPlayer*3)-1+Bar]:=14833; NextXP[(CurrentPlayer*3)-1+Bar]:=16456; end;
16456..18246 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=32; PastXP[(CurrentPlayer*3)-1+Bar]:=16456; NextXP[(CurrentPlayer*3)-1+Bar]:=18247; end;
18247..20223 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=33; PastXP[(CurrentPlayer*3)-1+Bar]:=18247; NextXP[(CurrentPlayer*3)-1+Bar]:=20224; end;
20224..22405 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=34; PastXP[(CurrentPlayer*3)-1+Bar]:=20224; NextXP[(CurrentPlayer*3)-1+Bar]:=22406; end;
22406..24814 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=35; PastXP[(CurrentPlayer*3)-1+Bar]:=22406; NextXP[(CurrentPlayer*3)-1+Bar]:=24815; end;
24815..27472 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=36; PastXP[(CurrentPlayer*3)-1+Bar]:=24815; NextXP[(CurrentPlayer*3)-1+Bar]:=27473; end;
27473..30407 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=37; PastXP[(CurrentPlayer*3)-1+Bar]:=27473; NextXP[(CurrentPlayer*3)-1+Bar]:=30408; end;
30408..33647 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=38; PastXP[(CurrentPlayer*3)-1+Bar]:=30408; NextXP[(CurrentPlayer*3)-1+Bar]:=33648; end;
33648..37223 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=39; PastXP[(CurrentPlayer*3)-1+Bar]:=33648; NextXP[(CurrentPlayer*3)-1+Bar]:=37224; end;
37224..41170 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=40; PastXP[(CurrentPlayer*3)-1+Bar]:=37224; NextXP[(CurrentPlayer*3)-1+Bar]:=41171; end;
41171..45528 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=41; PastXP[(CurrentPlayer*3)-1+Bar]:=41171; NextXP[(CurrentPlayer*3)-1+Bar]:=45529; end;
45529..50338 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=42; PastXP[(CurrentPlayer*3)-1+Bar]:=45529; NextXP[(CurrentPlayer*3)-1+Bar]:=50339; end;
50339..55648 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=43; PastXP[(CurrentPlayer*3)-1+Bar]:=50339; NextXP[(CurrentPlayer*3)-1+Bar]:=55649; end;
55649..61511 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=44; PastXP[(CurrentPlayer*3)-1+Bar]:=55649; NextXP[(CurrentPlayer*3)-1+Bar]:=61512; end;
61512..67982 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=45; PastXP[(CurrentPlayer*3)-1+Bar]:=61512; NextXP[(CurrentPlayer*3)-1+Bar]:=67983; end;
67983..75126 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=46; PastXP[(CurrentPlayer*3)-1+Bar]:=67983; NextXP[(CurrentPlayer*3)-1+Bar]:=75127; end;
75127..83013 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=47; PastXP[(CurrentPlayer*3)-1+Bar]:=75127; NextXP[(CurrentPlayer*3)-1+Bar]:=83014; end;
83014..91720 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=48; PastXP[(CurrentPlayer*3)-1+Bar]:=83014; NextXP[(CurrentPlayer*3)-1+Bar]:=91721; end;
91721..101332 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=49; PastXP[(CurrentPlayer*3)-1+Bar]:=91721; NextXP[(CurrentPlayer*3)-1+Bar]:=101333; end;
101333..111944 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=50; PastXP[(CurrentPlayer*3)-1+Bar]:=101333; NextXP[(CurrentPlayer*3)-1+Bar]:=111945; end;
111945..123659 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=51; PastXP[(CurrentPlayer*3)-1+Bar]:=111945; NextXP[(CurrentPlayer*3)-1+Bar]:=123660; end;
123660..136593 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=52; PastXP[(CurrentPlayer*3)-1+Bar]:=123660; NextXP[(CurrentPlayer*3)-1+Bar]:=136594; end;
136594..150871 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=53; PastXP[(CurrentPlayer*3)-1+Bar]:=136594; NextXP[(CurrentPlayer*3)-1+Bar]:=150872; end;
150872..166635 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=54; PastXP[(CurrentPlayer*3)-1+Bar]:=150872; NextXP[(CurrentPlayer*3)-1+Bar]:=166636; end;
166636..184039 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=55; PastXP[(CurrentPlayer*3)-1+Bar]:=166636; NextXP[(CurrentPlayer*3)-1+Bar]:=184040; end;
184040..203253 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=56; PastXP[(CurrentPlayer*3)-1+Bar]:=184040; NextXP[(CurrentPlayer*3)-1+Bar]:=203254; end;
203254..224465 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=57; PastXP[(CurrentPlayer*3)-1+Bar]:=203254; NextXP[(CurrentPlayer*3)-1+Bar]:=224466; end;
224466..247885 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=58; PastXP[(CurrentPlayer*3)-1+Bar]:=224466; NextXP[(CurrentPlayer*3)-1+Bar]:=247886; end;
247886..273741 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=59; PastXP[(CurrentPlayer*3)-1+Bar]:=247886; NextXP[(CurrentPlayer*3)-1+Bar]:=273742; end;
273742..302287 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=60; PastXP[(CurrentPlayer*3)-1+Bar]:=273742; NextXP[(CurrentPlayer*3)-1+Bar]:=302288; end;
302288..333803 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=61; PastXP[(CurrentPlayer*3)-1+Bar]:=302288; NextXP[(CurrentPlayer*3)-1+Bar]:=333804; end;
333804..368598 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=62; PastXP[(CurrentPlayer*3)-1+Bar]:=333804; NextXP[(CurrentPlayer*3)-1+Bar]:=368599; end;
368599..407014 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=63; PastXP[(CurrentPlayer*3)-1+Bar]:=368599; NextXP[(CurrentPlayer*3)-1+Bar]:=407015; end;
407015..449427 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=64; PastXP[(CurrentPlayer*3)-1+Bar]:=407015; NextXP[(CurrentPlayer*3)-1+Bar]:=449428; end;
449428..496253 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=65; PastXP[(CurrentPlayer*3)-1+Bar]:=449428; NextXP[(CurrentPlayer*3)-1+Bar]:=496254; end;
496254..547952 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=66; PastXP[(CurrentPlayer*3)-1+Bar]:=496254; NextXP[(CurrentPlayer*3)-1+Bar]:=547953; end;
547953..605031 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=67; PastXP[(CurrentPlayer*3)-1+Bar]:=547953; NextXP[(CurrentPlayer*3)-1+Bar]:=605032; end;
605032..668050 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=68; PastXP[(CurrentPlayer*3)-1+Bar]:=605032; NextXP[(CurrentPlayer*3)-1+Bar]:=668051; end;
668051..737626 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=69; PastXP[(CurrentPlayer*3)-1+Bar]:=668051; NextXP[(CurrentPlayer*3)-1+Bar]:=737627; end;
737627..814444 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=70; PastXP[(CurrentPlayer*3)-1+Bar]:=737627; NextXP[(CurrentPlayer*3)-1+Bar]:=814445; end;
814445..899256 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=71; PastXP[(CurrentPlayer*3)-1+Bar]:=814445; NextXP[(CurrentPlayer*3)-1+Bar]:=899257; end;
899257..992894 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=72; PastXP[(CurrentPlayer*3)-1+Bar]:=899257; NextXP[(CurrentPlayer*3)-1+Bar]:=992895; end;
992895..1096277 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=73; PastXP[(CurrentPlayer*3)-1+Bar]:=992895; NextXP[(CurrentPlayer*3)-1+Bar]:=1096278; end;
1096278..1210420 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=74; PastXP[(CurrentPlayer*3)-1+Bar]:=1096278; NextXP[(CurrentPlayer*3)-1+Bar]:=1210421; end;
1210421..1336442 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=75; PastXP[(CurrentPlayer*3)-1+Bar]:=1210421; NextXP[(CurrentPlayer*3)-1+Bar]:=1336443; end;
1336443..1475580 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=76; PastXP[(CurrentPlayer*3)-1+Bar]:=1336443; NextXP[(CurrentPlayer*3)-1+Bar]:=1475581; end;
1475581..1629199 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=77; PastXP[(CurrentPlayer*3)-1+Bar]:=1475581; NextXP[(CurrentPlayer*3)-1+Bar]:=1629200; end;
1629200..1798807 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=78; PastXP[(CurrentPlayer*3)-1+Bar]:=1629200; NextXP[(CurrentPlayer*3)-1+Bar]:=1798808; end;
1798808..1986067 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=79; PastXP[(CurrentPlayer*3)-1+Bar]:=1798808; NextXP[(CurrentPlayer*3)-1+Bar]:=1986068; end;
1986068..2192817 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=80; PastXP[(CurrentPlayer*3)-1+Bar]:=1986068; NextXP[(CurrentPlayer*3)-1+Bar]:=2192818; end;
2192818..2421086 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=81; PastXP[(CurrentPlayer*3)-1+Bar]:=2192818; NextXP[(CurrentPlayer*3)-1+Bar]:=2421087; end;
2421087..2673113 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=82; PastXP[(CurrentPlayer*3)-1+Bar]:=2421087; NextXP[(CurrentPlayer*3)-1+Bar]:=2673114; end;
2673114..2951372 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=83; PastXP[(CurrentPlayer*3)-1+Bar]:=2673114; NextXP[(CurrentPlayer*3)-1+Bar]:=2951373; end;
2951373..3258593 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=84; PastXP[(CurrentPlayer*3)-1+Bar]:=2951373; NextXP[(CurrentPlayer*3)-1+Bar]:=3258594; end;
3258594..3597791 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=85; PastXP[(CurrentPlayer*3)-1+Bar]:=3258594; NextXP[(CurrentPlayer*3)-1+Bar]:=3597792; end;
3597792..3972293 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=86; PastXP[(CurrentPlayer*3)-1+Bar]:=3597792; NextXP[(CurrentPlayer*3)-1+Bar]:=3972294; end;
3972294..4385775 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=87; PastXP[(CurrentPlayer*3)-1+Bar]:=3972294; NextXP[(CurrentPlayer*3)-1+Bar]:=4385776; end;
4385776..4842294 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=88; PastXP[(CurrentPlayer*3)-1+Bar]:=4385776; NextXP[(CurrentPlayer*3)-1+Bar]:=4842295; end;
4842295..5346331 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=89; PastXP[(CurrentPlayer*3)-1+Bar]:=4842295; NextXP[(CurrentPlayer*3)-1+Bar]:=5346332; end;
5346332..5902830 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=90; PastXP[(CurrentPlayer*3)-1+Bar]:=5346332; NextXP[(CurrentPlayer*3)-1+Bar]:=5902831; end;
5902831..6517252 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=91; PastXP[(CurrentPlayer*3)-1+Bar]:=5902831; NextXP[(CurrentPlayer*3)-1+Bar]:=6517253; end;
6517253..7195628 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=92; PastXP[(CurrentPlayer*3)-1+Bar]:=6517253; NextXP[(CurrentPlayer*3)-1+Bar]:=7195629; end;
7195629..7944613 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=93; PastXP[(CurrentPlayer*3)-1+Bar]:=7195629; NextXP[(CurrentPlayer*3)-1+Bar]:=7944614; end;
7944614..8771557 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=94; PastXP[(CurrentPlayer*3)-1+Bar]:=7944614; NextXP[(CurrentPlayer*3)-1+Bar]:=8771558; end;
8771558..9684576 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=95; PastXP[(CurrentPlayer*3)-1+Bar]:=8771558; NextXP[(CurrentPlayer*3)-1+Bar]:=9684577; end;
9684577..10692628 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=96; PastXP[(CurrentPlayer*3)-1+Bar]:=9684577; NextXP[(CurrentPlayer*3)-1+Bar]:=10692629; end;
10692629..11805605 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=97; PastXP[(CurrentPlayer*3)-1+Bar]:=10692629; NextXP[(CurrentPlayer*3)-1+Bar]:=11805606; end;
11805606..13034430 :begin Lvl[(CurrentPlayer*3)-1+Bar]:=98; PastXP[(CurrentPlayer*3)-1+Bar]:=11805606; NextXP[(CurrentPlayer*3)-1+Bar]:=13034431; end;
13034431..200000000:begin Lvl[(CurrentPlayer*3)-1+Bar]:=99; PastXP[(CurrentPlayer*3)-1+Bar]:=13034431; NextXP[(CurrentPlayer*3)-1+Bar]:=200000000; end;
end;
case GoalLvl[(CurrentPlayer*3)-1+Bar] of
1: XPX[(CurrentPlayer*3)-1+Bar]:=0;
2: XPX[(CurrentPlayer*3)-1+Bar]:=83;
3: XPX[(CurrentPlayer*3)-1+Bar]:=174;
4: XPX[(CurrentPlayer*3)-1+Bar]:=276;
5: XPX[(CurrentPlayer*3)-1+Bar]:=388;
6: XPX[(CurrentPlayer*3)-1+Bar]:=512;
7: XPX[(CurrentPlayer*3)-1+Bar]:=650;
8: XPX[(CurrentPlayer*3)-1+Bar]:=801;
9: XPX[(CurrentPlayer*3)-1+Bar]:=969;
10: XPX[(CurrentPlayer*3)-1+Bar]:=1154;
11: XPX[(CurrentPlayer*3)-1+Bar]:=1358;
12: XPX[(CurrentPlayer*3)-1+Bar]:=1584;
13: XPX[(CurrentPlayer*3)-1+Bar]:=1833;
14: XPX[(CurrentPlayer*3)-1+Bar]:=2107;
15: XPX[(CurrentPlayer*3)-1+Bar]:=2411;
16: XPX[(CurrentPlayer*3)-1+Bar]:=2746;
17: XPX[(CurrentPlayer*3)-1+Bar]:=3115;
18: XPX[(CurrentPlayer*3)-1+Bar]:=3523;
19: XPX[(CurrentPlayer*3)-1+Bar]:=3973;
20: XPX[(CurrentPlayer*3)-1+Bar]:=4470;
21: XPX[(CurrentPlayer*3)-1+Bar]:=5018;
22: XPX[(CurrentPlayer*3)-1+Bar]:=5624;
23: XPX[(CurrentPlayer*3)-1+Bar]:=6291;
24: XPX[(CurrentPlayer*3)-1+Bar]:=7028;
25: XPX[(CurrentPlayer*3)-1+Bar]:=7842;
26: XPX[(CurrentPlayer*3)-1+Bar]:=8740;
27: XPX[(CurrentPlayer*3)-1+Bar]:=9730;
28: XPX[(CurrentPlayer*3)-1+Bar]:=10824;
29: XPX[(CurrentPlayer*3)-1+Bar]:=12031;
30: XPX[(CurrentPlayer*3)-1+Bar]:=13363;
31: XPX[(CurrentPlayer*3)-1+Bar]:=14833;
32: XPX[(CurrentPlayer*3)-1+Bar]:=16456;
33: XPX[(CurrentPlayer*3)-1+Bar]:=18247;
34: XPX[(CurrentPlayer*3)-1+Bar]:=20224;
35: XPX[(CurrentPlayer*3)-1+Bar]:=22406;
36: XPX[(CurrentPlayer*3)-1+Bar]:=24815;
37: XPX[(CurrentPlayer*3)-1+Bar]:=27473;
38: XPX[(CurrentPlayer*3)-1+Bar]:=30408;
39: XPX[(CurrentPlayer*3)-1+Bar]:=33648;
40: XPX[(CurrentPlayer*3)-1+Bar]:=37224;
41: XPX[(CurrentPlayer*3)-1+Bar]:=41171;
42: XPX[(CurrentPlayer*3)-1+Bar]:=45529;
43: XPX[(CurrentPlayer*3)-1+Bar]:=50339;
44: XPX[(CurrentPlayer*3)-1+Bar]:=55649;
45: XPX[(CurrentPlayer*3)-1+Bar]:=61512;
46: XPX[(CurrentPlayer*3)-1+Bar]:=67983;
47: XPX[(CurrentPlayer*3)-1+Bar]:=75127;
48: XPX[(CurrentPlayer*3)-1+Bar]:=83014;
49: XPX[(CurrentPlayer*3)-1+Bar]:=91721;
50: XPX[(CurrentPlayer*3)-1+Bar]:=101333;
51: XPX[(CurrentPlayer*3)-1+Bar]:=111945;
52: XPX[(CurrentPlayer*3)-1+Bar]:=123660;
53: XPX[(CurrentPlayer*3)-1+Bar]:=136594;
54: XPX[(CurrentPlayer*3)-1+Bar]:=150872;
55: XPX[(CurrentPlayer*3)-1+Bar]:=166636;
56: XPX[(CurrentPlayer*3)-1+Bar]:=184040;
57: XPX[(CurrentPlayer*3)-1+Bar]:=203254;
58: XPX[(CurrentPlayer*3)-1+Bar]:=224466;
59: XPX[(CurrentPlayer*3)-1+Bar]:=247886;
60: XPX[(CurrentPlayer*3)-1+Bar]:=273742;
61: XPX[(CurrentPlayer*3)-1+Bar]:=302288;
62: XPX[(CurrentPlayer*3)-1+Bar]:=333804;
63: XPX[(CurrentPlayer*3)-1+Bar]:=368599;
64: XPX[(CurrentPlayer*3)-1+Bar]:=407015;
65: XPX[(CurrentPlayer*3)-1+Bar]:=449428;
66: XPX[(CurrentPlayer*3)-1+Bar]:=496254;
67: XPX[(CurrentPlayer*3)-1+Bar]:=547953;
68: XPX[(CurrentPlayer*3)-1+Bar]:=605032;
69: XPX[(CurrentPlayer*3)-1+Bar]:=668051;
70: XPX[(CurrentPlayer*3)-1+Bar]:=737627;
71: XPX[(CurrentPlayer*3)-1+Bar]:=814445;
72: XPX[(CurrentPlayer*3)-1+Bar]:=899257;
73: XPX[(CurrentPlayer*3)-1+Bar]:=992895;
74: XPX[(CurrentPlayer*3)-1+Bar]:=1096278;
75: XPX[(CurrentPlayer*3)-1+Bar]:=1210421;
76: XPX[(CurrentPlayer*3)-1+Bar]:=1336443;
77: XPX[(CurrentPlayer*3)-1+Bar]:=1475581;
78: XPX[(CurrentPlayer*3)-1+Bar]:=1629200;
79: XPX[(CurrentPlayer*3)-1+Bar]:=1798808;
80: XPX[(CurrentPlayer*3)-1+Bar]:=1986068;
81: XPX[(CurrentPlayer*3)-1+Bar]:=2192818;
82: XPX[(CurrentPlayer*3)-1+Bar]:=2421087;
83: XPX[(CurrentPlayer*3)-1+Bar]:=2673114;
84: XPX[(CurrentPlayer*3)-1+Bar]:=2951373;
85: XPX[(CurrentPlayer*3)-1+Bar]:=3258594;
86: XPX[(CurrentPlayer*3)-1+Bar]:=3597792;
87: XPX[(CurrentPlayer*3)-1+Bar]:=3972294;
88: XPX[(CurrentPlayer*3)-1+Bar]:=4385776;
89: XPX[(CurrentPlayer*3)-1+Bar]:=4842295;
90: XPX[(CurrentPlayer*3)-1+Bar]:=5346332;
91: XPX[(CurrentPlayer*3)-1+Bar]:=5902831;
92: XPX[(CurrentPlayer*3)-1+Bar]:=6517253;
93: XPX[(CurrentPlayer*3)-1+Bar]:=7195629;
94: XPX[(CurrentPlayer*3)-1+Bar]:=7944614;
95: XPX[(CurrentPlayer*3)-1+Bar]:=8771558;
96: XPX[(CurrentPlayer*3)-1+Bar]:=9684577;
97: XPX[(CurrentPlayer*3)-1+Bar]:=10692629;
98: XPX[(CurrentPlayer*3)-1+Bar]:=11805606;
99: XPX[(CurrentPlayer*3)-1+Bar]:=13034431;
end;
XPToNN[(CurrentPlayer*3)-1+Bar]:=(XPX[(CurrentPlayer*3)-1+Bar]-TotalXP[(CurrentPlayer*3)-1+Bar]);
XPTillLVL[(CurrentPlayer*3)-1+Bar]:=(NextXP[(CurrentPlayer*3)-1+Bar]-TotalXP[(CurrentPlayer*3)-1+Bar]);
XPPast[(CurrentPlayer*3)-1+Bar]:=(TotalXP[(CurrentPlayer*3)-1+Bar]-PastXP[(CurrentPlayer*3)-1+Bar]);
XPPerLVL[(CurrentPlayer*3)-1+Bar]:=(NextXP[(CurrentPlayer*3)-1+Bar]-PastXP[(CurrentPlayer*3)-1+Bar]);
Percent[(CurrentPlayer*3)-1+Bar]:=((100*XPPast[(CurrentPlayer*3)-1+Bar]/(XPPerLVL[(CurrentPlayer*3)-1+Bar]+1)));
PercentNN[(CurrentPlayer*3)-1+Bar]:=(100*TotalXP[(CurrentPlayer*3)-1+Bar]/XPX[(CurrentPlayer*3)-1+Bar]);
end;

those 3 functions. the third is where youll get the info.

XPX,GoalLvl,XPToNN,CounterOrig,XPTillLVL,XPPast,XP PerLVL:Array of Integer;
PercentNN,Percent,CounterNow,XPGain,TotalXP,Sec:Ar ray of Integer;
LVLH,LVLM,NNH,NNM,PastXP,OrigXP,NextXP,Lvl,XPRate: Array of Integer;
TimeToLVL,TimeToNN:Array of extended;
g,StartTime:Integer;

thats the var at the top of the script. its very handy.

heres the proggy

procedure ProgressReport;
var
Bar:Integer;
begin
if g mod 5 = 0 then
ClearDebug;
Inc(g);
SRLRandomsReport;
For Bar := 2 to 2 do
begin
Writeln('Skill Number ' + IntToStr(Bar));
XP(2,SKILL_RUNECRAFTING,2);
Sec[CurrentPlayer]:= (1+((Getsystemtime-StartTime)/1000));
XPRate[(CurrentPlayer*3)-1+Bar] :=(3600*(XPGain[(CurrentPlayer*3)-1+Bar]))/(Sec[CurrentPlayer]);
TimeToLVL[(CurrentPlayer*3)-1+Bar] :=extended(XPTillLVL[(CurrentPlayer*3)-1+Bar])/(XPRate[(CurrentPlayer*3)-1+Bar]+1);
TimeToNN[(CurrentPlayer*3)-1+Bar] :=extended(XPToNN[(CurrentPlayer*3)-1+Bar])/(XPRate[(CurrentPlayer*3)-1+Bar]+1);
LVLH[(CurrentPlayer*3)-1+Bar]:=Floor(TimeToLVL[(CurrentPlayer*3)-1+Bar]);
LVLM[(CurrentPlayer*3)-1+Bar]:=Floor(60*(TimeToLVL[(CurrentPlayer*3)-1+Bar]-Floor(TimeToLVL[(CurrentPlayer*3)-1+Bar])));
NNH[(CurrentPlayer*3)-1+Bar]:=Floor(TimeToNN[(CurrentPlayer*3)-1+Bar]);
NNM[(CurrentPlayer*3)-1+Bar]:=Floor(60*(TimeToNN[(CurrentPlayer*3)-1+Bar]-Floor(TimeToNN[(CurrentPlayer*3)-1+Bar])));
writeln('| Running for: ' + MsToTime((Getsystemtime-StartTime),Time_Short));
writeln('| RC Experience: ' + IntToStr(XPGain[(CurrentPlayer*3)-1+Bar]));
writeln('| RC Xp/Hour : ' + IntToStr(XPRate[(CurrentPlayer*3)-1+Bar]));
Writeln('| ' + IntToStr(Percent[(CurrentPlayer*3)-1+Bar]) + '% to Lvl ' + IntToStr(Lvl[(CurrentPlayer*3)-1+Bar]+1) + ' ' + IntToStr(XPTillLVL[(CurrentPlayer*3)-1+Bar]) + ' XP to Lvl ' + IntToStr(Lvl[(CurrentPlayer*3)-1+Bar]+1) + ' ' + IntToStr(LVLH[(CurrentPlayer*3)-1+Bar]) + ' H ' + IntToStr(LVLM[(CurrentPlayer*3)-1+Bar]) + ' M to Lvl ' + IntToStr(Lvl[(CurrentPlayer*3)-1+Bar]+1) + ' ');
Writeln('| ' + IntToStr(PercentNN[(CurrentPlayer*3)-1+Bar]) + '% to Lvl ' + IntToStr(GoalLvl[(CurrentPlayer*3)-1+Bar]) + ' ' + IntToStr(XPToNN[(CurrentPlayer*3)-1+Bar]) + ' XP to Lvl ' + IntToStr(GoalLvl[(CurrentPlayer*3)-1+Bar]) + ' ' + IntToStr(NNH[(CurrentPlayer*3)-1+Bar]) + ' H ' + IntToStr(NNM[(CurrentPlayer*3)-1+Bar]) + ' M to Lvl ' + IntToStr(GoalLvl[(CurrentPlayer*3)-1+Bar]) + ' ');
Writeln('| Current Lvl ' + IntToStr(Lvl[(CurrentPlayer*3)-1+Bar]));
writeln('\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~');
end;
end;

no issues that ive seen since ive fixed it all

Sin
06-19-2012, 02:03 AM
Take it a little simpler lmao, he finds it hard to differentiate from an integer and a string :p