Heaven And Hell Scape
Would you like to react to this message? Create an account in a few clicks or log in to continue.
Heaven And Hell Scape

Heaven And Hell Scape Forums
 
PortalHomeworking mining base :P for people working on servers Btn_donate_LGLatest imagesSearchRegisterLog in

 

 working mining base :P for people working on servers

Go down 
AuthorMessage
skillenowns




Number of posts : 68
Age : 32
Location : ancient chinease secret
Heaven or Hell? : heaven/angel
Registration date : 2008-07-28

working mining base :P for people working on servers Empty
PostSubject: working mining base :P for people working on servers   working mining base :P for people working on servers EmptyTue Aug 12, 2008 3:32 pm

Create a new folder called Skills.

Create a new class called Mining.java in it.

Put this in the class.


Code:
package RS2E.Skills;

import RS2E.Packets.*;
import RS2E.Players.*;
import java.util.Random;

public class Mining
{
Player p;
int anim;
int speed;
int time;
int amount;
int objid;
int rockid;
int oreTimer = -1;
int secondtimer = 2;
int ores = 0;
int maxores = 0;
boolean hacking = false;
public Mining(Player p2)
{
p = p2;
}
public void startCutting(int objectid)
{
if (getPlayerPickaxe() == -1)
{
p.frame.sendMessage(p,"You don't have a pickaxe wich you have the Mining level to use.");
return;
}
if ((getLevelForPickAxe(getPlayerPickaxe()) < getMiningLevel())== false)
{
p.frame.sendMessage(p, "You don't have a pickaxe wich you have the Mining level to use.");
return;
}

objid = objectid;
rockid = getRockIDForObject(objid);
if (getLevelForOre(rockid) > getMiningLevel())
{
p.frame.sendMessage(p, "You need level " + getLevelForOre(rockid)+" to take this ore");
return;
}
p.frame.sendMessage(p, "You swing your pickaxe at the rock.");
maxores = getMaxAmountOfOre(rockid);
if (maxores == 0) maxores = 1;
http://p.frame.sendMessage(p, "You will get " + maxores + " ores from this ore");
setAnimAndSpeed(rockid, getPlayerPickaxe(), getMiningLevel());
oreTimer = time;
p.requestAnim(anim,0);
hacking = true;
}
public void process()
{
if (hacking)
{
secondtimer--;
if (secondtimer == 0)
{
secondtimer = 2;
oreTimer--;
p.requestAnim(anim, 0);
}
if (oreTimer == 0)
{
oreTimer = time;
ores++;
doOre();
}
}
}
public void resetMining()
{
oreTimer = -1;
hacking = false;
}
public void doOre()
{
p.frame.sendMessage(p, "You get some ore.");
giveItem(getOreForRock(rockid));
giveMiningXP(getXpForOre(rockid));
p.requestAnim(anim,0);
}
public int getMiningLevel()
{
return p.skillLvl[14];
}
public void giveMiningXP(int xp)
{
p.skillXP[14] = p.skillXP[14] + xp;
p.frame.sendSkillLvl(p, 14);
}
public boolean hasItem(int id)
{
PlayerItems pi = new PlayerItems();
return pi.invItemCount(p, id) > 0;
}
public void giveItem(int id)
{
PlayerItems pi = new PlayerItems();
pi.addItem(p, id,1);
}
public int getPlayerPickaxe()
{
if (hasItem(1265)) return 1265;
if (hasItem(1267)) return 1267;
if (hasItem(1269)) return 1269;
if (hasItem(1271)) return 1271;
if (hasItem(1273)) return 1273;
if (hasItem(1275)) return 1275;
if (p.equipment[3] == 1265) return 1265;
if (p.equipment[3] == 1267) return 1267;
if (p.equipment[3] == 1269) return 1269;
if (p.equipment[3] == 1271) return 1271;
if (p.equipment[3] == 1273) return 1273;
if (p.equipment[3] == 1275) return 1275;
return -1;
}
public int getRockIDForObject(int ore)
{
switch (ore)
{
case 2110:
case 2090:
case 2091://Copper
return 1;
case 2094:
case 2095://Tin
return 2;
case 2092:
case 2093:// Iron
return 3;
case 2100:
case 2101://Silver
return 4;
case 2098:
case 2099://Gold
return 5;
case 2096:
case 2097://Coal
return 6;
case 2102:
case 2103://Mithril
return 7;
case 2104:
case 2105://Adamantite
return 8;
case 2106:
case 2107://Rune
return 9;
case 4028:
case 4029:
case 4030://Limestone
return 10;
case 6669:
case 6670:
case 6671://Elemental
return 11;

}
return -1;
}
public int getOreForRock(int Ore)
{
switch (Ore)
{
case 1://Copper
return 436;

case 2://Tin
return 438;

case 3://Iron
return 440;

case 4://Silver
return 442;

case 5://Coal
return 453;

case 6://Gold
return 444;

case 7://Mithril
return 447;

case 8://Adamantite
return 449;

case 9://Runite
return 451;

case 10://Limestone
return 3211;

case 11://Elemental
return 2892;

}
return -1;
}
public int getMaxAmountOfOre(int Ore)
{
switch (Ore)
{
case 1://Copper
return 1;

case 2://Tin
return 1;

case 3://Iron
return 1;

case 4://Silver
return 1;

case 5://Coal
return 1;

case 6://Gold
return 1;

case 7://Mithril
return 1;

case 8://Adamantite
return 1;

case 9://Runite
return 1;

case 10://Limestone
return 1;

case 11://Elemental
return 1;

}
return -1;
}
public int getXpForOre(int Ore)
{
switch (Ore)
{
case 1://Copper
return 10;

case 2://Tin
return 10;

case 3://Iron
return 35;

case 4://Silver
return 42;

case 5://Coal
return 50;

case 6://Gold
return 60;

case 7://Mithril
return 90;

case 8://Adamantite
return 120;

case 9://Runite
return 200;

case 10://Limestone
return 5;

case 11://Elemental
return 20;

}
return -1;
}
public int getLevelForOre(int Ore)
{
switch (Ore)
{
case 1://Copper
return 0;

case 2://Tin
return 0;

case 3://Iron
return 15;

case 4://Silver
return 20;

case 5://Coal
return 30;

case 6://Gold
return 40;

case 7://Mithril
return 55;

case 8://Adamantite
return 70;

case 9://Runite
return 80;

case 10://Limestone
return 1;

case 11://Elemental
return 10;

}
return -1;
}
public int getLevelForPickAxe(int axe)
{
switch (axe)
{
case 1265://Bronze Pickaxe
return 0;

case 1267://Iron Pickaxe
return 0;

case 1269://Steel Pickaxe
return 5;

case 1271://Mithril Pickaxe
return 21;

case 1273://Adamant Pickaxe
return 31;

case 1275://Rune Pickaxe
return 41;

}
return -1;
}
public void setAnimAndSpeed(int ore,int axe,int level)
{
switch(axe)
{
case 1265://Bronze Pickaxe
anim = 625;
speed = 1;
break;
case 1267://Iron Pickaxe
anim = 626;
speed = 2;
break;
case 1269://Steel Pickaxe
anim = 627;
speed = 5;
break;
case 1271://Mithril Pickaxe
anim = 629;
speed = 13;
break;
case 1273://Adamant Pickaxe
anim = 628;
speed = 20;
break;
case 1275://Rune Pickaxe
anim = 624;
speed = 30;
break;
}
speed = (speed - (speed * 2)) / 10;
time = ( ( level / getLevelForOre(ore) )) - speed;
if (time < 0) time = 1;
if (time == 1) anim++;
}
}Save it, now go to your firstObject class. (if you don't have one forget about this whole thread.)

Add this in it.


Code:
case 2110:
case 2090:
case 2091:/* Copper */
case 2094:
case 2095:/* Tin */
case 2092:
case 2093:/* Iron */
case 2100:
case 2101:/* Silver */
case 2098:
case 2099:/* Gold */
case 2096:
case 2097:/* Coal */
case 2102:
case 2103:/* Mithril */
case 2104:
case 2105:/* Adamantite */
case 2106:
case 2107:/* Rune */
case 4028:
case 4029:
case 4030:/* Limestone( */
case 6669:
case 6670:
case 6671:/* Elemental */
p.mi = new Mining(p);
p.mi.startCutting(objectId);
break;
Now go to your Player class.

And add this :
Code:
public Mining mi;
and this elsewhere in that class
Code:
mi.process();
Back to top Go down
 
working mining base :P for people working on servers
Back to top 
Page 1 of 1
 Similar topics
-
» I am working on the server now
» list of spells and which ones are working
» Hey People

Permissions in this forum:You cannot reply to topics in this forum
Heaven And Hell Scape :: Server Discussion :: Server Guides-
Jump to: