var state = "";
var ghost_count = 0;
var DisconnectFlag = 0.9;
var isAutoRegenOK = 0;
var turn = 0;
var petTurn = 0;
var hpFraction = 0.8;
ts.Character.MAXSP = 100;
ts.Character.MAXHP = 420
ts.CurrentPartner.MAXSP = 150;
ts.CurrentPartner.MAXHP = 490
//skill id
var mySk = 10000;
var petSk = 10000;
function InitBot()
{
Timer.Enabled = true;
debug("Jerry is now OL" , 0x00FF00 );
EatHP();
EatSP();
}
function MyAttack()
{
ts.delay(600);
turn++;
if (turn == 1)
{
ts.SendAttack(ts.Character.Row, ts.Character.Col, 0, 2, mySk)
}
if (turn >= 2)
{
ts.SendAttack(ts.Character.Row , ts.Character.Col , 0, 3, mySk)
}
}
function MyPartnerAttack()
{
ts.delay(700);
petTurn++;
if (petTurn == 1)
{
ts.SendAttack(ts.CurrentPartner.Row, ts.CurrentPartner.Col, 0, 2, petSk)
}
if (petTurn >= 2)
{
ts.SendAttack(ts.CurrentPartner.Row , ts.CurrentPartner.Col , 0, 3, petSk)
}
}
function autoSendItem()
{
for(var i=1;i<=25;i++)
{
var oSlot = ts.MyItems(i)
var oItem = ITEMS.Item(oSlot.itemid)
var itemname = oItem.getName()
if(oSlot.itemid == 0)
{
continue;
}
if(itemid != 0 && oSlot.num >= 50)
{
ts.SendItemTo(getPlayerId("MixPro"),oSlot.slot,oSlot.num);
}
}
}
function BattleStarted()
{
turn = 0;
petTurn = 0;
}
function BattleStoped()
{
autoSendItem();
CheckDisconnect();
}
function onEvilGod()
{
debug("E V I L G O D."+"["+ghost_count+"]",0x0000FF)
msg = "Wrong.Add(\""+ts.LastQuestion+"\",\""+ts.LastResponseAnswer+"\")"
}
function onLuckyGod()
{
debug("LUCKY G O D.",0xFF0000)
if(!QA.Exists(ts.LastQuestion))
{
ts.delay(6000);
QA.Add(ts.LastQuestion,ts.LastResponseAnswer)
msg = "QA.Add(\""+ts.LastQuestion+"\",\""+ts.LastResponseAnswer+"\")"
}
ts.delay(5000);
}
function OnTimer()
{
ts.RequestParty(317770);
}
function FinishAnswerFuckGod()
{
if(ghost_count>=1)
{
debug("Dis by Ghost",0xFF0000)
ts.Disconect();
}
}
function PartyStop( playerid )
{
if(playerid == getPlayerId(1794408)
|| playerid == getPlayerId(580256)
|| playerid == getPlayerId(1572291)
|| playerid == getPlayerId(317770)
|| playerid == getPlayerId(1652163)
{
debug("Dis by " + playerid + " dis",0xFF0000)
ts.Disconect();
}
}
function CheckDisconnect()
{
if(ts.Character.HP < 20|| ts.CurrentPartner.HP < 20 )
{
debug("Dis by lost HP",0xFF0000)
ts.Disconect()
}
}
function onAnswerWrong(q,a)
{
}
function OnChat(PlayerName , Msg)
{
}
function doEatHP(order,difHp)
{
for(var i = 1;i<= 25;i++)
{
var oSlot = ts.MyItems.Item(i)
var oItem = ITEMS.Item(oSlot.itemid)
if (oSlot.itemid == 0)
{
continue;
}
if(oItem.isHPItem())
{
if (oItem.itemvalue > difHp)
{
continue;
}
var eatHpAmt = (difHp - (difHp % oItem.itemvalue)) / oItem.itemvalue
if (eatHpAmt> 0)
{
if (eatHpAmt > oSlot.num)
{
eatHpAmt = oSlot.num;
}
ts.EatItem(i,eatHpAmt,order)
debug( "?"+oItem.itemname+" HP "+oItem.itemvalue+"at slot "+i+" decrease "+eatHpAmt+"?" ,0xC08008 )
difHp = difHp - eatHpAmt * oItem.itemvalue
}
}
}
}
function doEatSP(order,difSp)
{
for(var i = 1;i<= 25;i++)
{
var oSlot = ts.MyItems.Item(i)
var oItem = ITEMS.Item(oSlot.itemid)
if (oSlot.itemid == 0)
{
continue;
}
if(oItem.isSPItem())
{
if (oItem.itemvalue > difSp)
{
continue;
}
var eatSpAmt = (difSp - (difSp % oItem.itemvalue)) / oItem.itemvalue
if (eatSpAmt> 0)
{
if (eatSpAmt > oSlot.num)
{
eatSpAmt = oSlot.num;
}
ts.EatItem(i,eatSpAmt,order);
debug( "?"+oItem.itemname+" SP "+oItem.itemvalue+"at slot "+i+" decrease "+eatSpAmt+"?" ,0xC08008 );
difSp = difSp - eatSpAmt * oItem.itemvalue;
}
}
}
}
function EatHP()
{
if (ts.Character.HP < (ts.Character.MAXHP * hpFraction))
{
doEatHP(0,(ts.Character.MAXHP * hpFraction)-ts.Character.HP)
}
if (ts.CurrentPartner.HP < (ts.CurrentPartner.MAXHP * hpFraction))
{
doEatHP(ts.CurrentPartner.Order,(ts.CurrentPartner.MAXHP * hpFraction)-ts.CurrentPartner.HP)
}
}
function EatSP()
{
if (ts.Character.SP < (ts.Character.MAXSP * spFraction))
{
doEatSP(0,(ts.Character.MAXSP * spFraction)-ts.Character.SP)
}
if (ts.CurrentPartner.SP < (ts.CurrentPartner.MAXSP * spFraction))
{
doEatSP(ts.CurrentPartner.Order,(ts.CurrentPartner.MAXSP * spFraction)-ts.CurrentPartner.SP)
}
}
InitBot()
ClearLog("Wrong.js")