var state = ""
var ghost_count = 0;
var god_count = 0;
var die_count = 0;
var pet_die_count = 0;
var battle_count = 0;
var DisconnectFlag = 0.3;
var HealingFlag = 0.5;
var hpFraction = 0.8;
var spFraction = 0.7;
var SetHPMAX1 = (ts.Character.MAXHP=700);
var SetHPMAX2 = (ts.CurrentPartner.MAXHP = 500);
var SetSPMAX1 = (ts.Character.MAXSP=100);
var SetSPMAX2 = (ts.CurrentPartner.MAXSP = 59);
var flee=0;
var pt_count=1;
var in_battle=0;
var mapid1 = 12521;
var mapid2 = 12013;
var warpid1 = 5;
var warpid2 = 1;
var warp_pos_x = 1522;
var warp_pos_y = 195;
var warp_pos_x_B = 62;
var warp_pos_y_B = 1615;
var myParty = new Array(946408,941106,942232,1813134,1813135);
pt_leader = 946408;
pt_sena = 941106;
var roundcount;
var roundcount_pet;
function MyAttack(){
var col;
var row;
m = SelectF1Target();
col=m.Col;
row=m.Row;
roundcount++;
switch (ts.Character.uid) {
case 1813134:
case1813135:
if (roundcount==2) {
sk = SkillID("Flee");
row=ts.Character.Row ;
col=ts.Character.Col;
}
else sk = SkillID("Attack");
break;
case 946408:
case 941106:
if (ts.Character.SP > 14 && roundcount<2 ) sk = SkillID("Fire Arrow");
else sk = 10000;
break;
case 942232: sk = SkillID("Defend"); break;
default: sk = SkillID("Attack"); break;
}
ts.SendAttack(
ts.Character.Row
, ts.Character.Col
, row
, col
, sk
)
}
function MyPartnerAttack(){
var col;
var row;
roundcount_pet++;
m = SelectF1Target();
col = m.Col;
row = m.Row;
switch (ts.Character.uid) {
case 1813134:
case 1813135:
case 942232:
case 946408:
sk = SkillID("Attack"); break;
case 941106:
case 946408:
if (roundcount_pet==1) {
row=1; col=2;
if (ts.CurrentPartner.SP > 14) sk = SkillID("Fire Arrow");
else sk = 10000;
} else sk = SkillID("Defend");
break;
default: sk = SkillID("Defend"); break;
}
ts.SendAttack(
ts.CurrentPartner.Row
, ts.CurrentPartner.Col
, row
, col
, sk
)
}
function BattleStarted(){
battle_count++;
in_battle=1;
roundcount=0;
roundcount_pet=0;
}
function BattleStoped(){
SaveWarrior();
EatHP();
EatSP();
//cdelay(5);
//CheckDisconnect();
ViewState();
in_battle=0;
}
function ViewState(){
debug("************************************",0xFF0000)
debug(" Battle Count : " + battle_count ,0xFF0000)
debug(" Dead Count : " + die_count ,0xFF0000)
debug(" Ghost Count : " + ts.Character.Ghost ,0xFF0000)
debug(" Warrior's FAI : " + ts.CurrentPartner.CharName +" : " + ts.CurrentPartner.fai,0xFF0000)
debug("************************************",0xFF0000)
}
function SaveWarrior(){
if(ts.CurrentPartner.HP< ((0.20) * ts.CurrentPartner.MAXHP)){
ts.Disconect();
debug(" SAVE THE FAI DISCONNECT NOW! : ",0x0000FF);
}
}
function onNPCAppear( npcmapid , x , y ){
//debug(npcmapid,0)
if(npcmapid == npcmapid){
//ts.ClickOnNPC(npcmapid)
//ts.ClickOnNPC(npcmapid)
}
}
function RemoveGhost(){
ErasingGhost = true
ts.ClickOnNPC(21)
}
function NpcDialogMenu(DialogId){
debug("Menu "+DialogId,0x0000FF)
//ts.SelectChoice(1);
//debug("Í͡úººº ÊÙéâÇéÂÂ! "+DialogId,0x0000FF)
//ts.SendEnd();
}
function NpcDialog(DialogId){
debug("Dialog "+DialogId,0x0000FF)
ts.SendEnd();
}
function NpcHiddenDialog(){
debug("NpcHiddenDialog ",0x0000FF)
ts.SendEnd()
}
function onAnswerWrong(q,a){
}
function FinishAnswerFuckGod(){
cdelay(5)
god_count++;
if(ghost_count>=3){
debug("3 ghost, disconnect now",0x00aaaa)
frm.mnuEnableReconnect.Checked = false;
ts.Disconect();
}
if(state=="autowarp"){
cdelay(5);
WarpLink( mapid2 ,warpid2 , mapid1 ,warpid1);
}
}
function Start(){
debug("Moving to battlefield...",0);
state="autowarp";
flee=0;
ts.Walk(warp_pos_x,warp_pos_y);
WarpLink( mapid2 ,warpid2 , mapid1 ,warpid1);
}
function Stop(){
state="";
}
function CheckDisconnect(){
if(ts.Character.HP < (DisconnectFlag * ts.Character.MAXHP)
|| ts.CurrentPartner.HP <(DisconnectFlag * ts.CurrentPartner.MAXHP)
){
frm.mnuEnableReconnect.Checked = false;
ts.Disconect();
}
}
function InitBot() {
debug("Julu Cave" , 0x00FF00 );
if (ts.Character.mapid==mapid1) WarpLink(mapid1,warpid1,mapid2,warpid2);
if (ts.Character.uid!=pt_leader) Timer.Enabled=true;
}
function OnTimer(){
if (ts.CurrentParty==0) ts.RequestParty(pt_leader);
else if (ts.CurrentParty==pt_leader) { flee=0; Timer.Enabled=false; }
}
function WaitAcceptParty(playerid){
for (var i=0; i<myParty.length;i++) {
if (playerid ==myParty[i]) { ts.AcceptParty(playerid); }
}
}
function AcceptedParty(playerid){
if(playerid == pt_sena)
ts.sena(playerid);
pt_count++;
if (pt_count=5) {
flee=0;
Start();
}
}
function PartyStop( playerid ){
for (var i=0; i<myParty.length;i++) {
if (playerid ==myParty[i]) { ts.Disconect(); }
}
}
function warpFinish(){
if(state=="autowarp" && ts.Character.uid==pt_leader){
if(ts.Character.mapid == mapid1){
ts.Walk(warp_pos_x_B,warp_pos_y_B);
ts.Delay(5000);
WarpLink( mapid2 ,warpid2 , mapid1 ,warpid1);
}else if(ts.Character.mapid == mapid2){
ts.Walk(warp_pos_x,warp_pos_y);
ts.Delay(5000);
WarpLink( mapid2 ,warpid2 , mapid1 ,warpid1);
}
}
}
InitBot();
debug(ts.Character.Ghost,0x0000FF)