#TouhouDanmakufu[Single]
#ScriptVersion[3]
#Title["PreBattleTalk Mogel"]
#Text["..."]
#System[".\system\Default_System.txt"]

#include"./lib/AllStarShot_Const.dnh"
#include"./lib/Functions.txt"
#include"./BGTask.txt"
#include"./Animation_lib.txt"
#include"./lib/Dialogue Prototype2.dnh"
let Enemy = ID_INVALID;
let EnemyX = 0;
let EnemyY = 0;
let yuyuX = 0;
let yuyuY = 0;

@Event{
	alternative(GetEventType)
	case(EV_REQUEST_LIFE){SetScriptResult(1);}
	case(EV_REQUEST_TIMER){SetScriptResult(-1);}
//case(EV_REQUEST_SPELL_SCORE){SetScriptResult(90000);}
}

@Initialize{
	Enemy = ObjEnemy_Create(OBJ_ENEMY_BOSS);
	ObjEnemy_Regist(Enemy);
ObjEnemy_SetDamageRate(Enemy,0,0);
ObjMove_SetPosition(Enemy,720,0);
DrawTimer03(2);//0=transition Spell-NonSpell,1=Transition NS-S,2= Spawn NS
InitializeAction(Enemy,GetCurrentScriptDirectory ~"img/dot_mogel.png");
DrawBoss_Task(Enemy);
SetAutoDeleteObject(true);

	BossActions;
}



@MainLoop{
	yield;
}

task BossActions{
//ObjMove_SetDestAtWeight(Enemy, GetStgFrameWidth/2, 100, 20,6);
SetAction(Enemy,ACT_MOVE_R,100);
wait(120);
	ShootBullets;
//Texto;
	while(ObjEnemy_GetInfo(Enemy, INFO_LIFE) > 0){
		EnemyX = ObjMove_GetX(Enemy);
		EnemyY = ObjMove_GetY(Enemy);
		ObjEnemy_SetIntersectionCircleToShot(Enemy, EnemyX, EnemyY, 20);
		ObjEnemy_SetIntersectionCircleToPlayer(Enemy, EnemyX, EnemyY, 20);
                                          
		yield;
	}
DeleteShotAll(TYPE_ALL, TYPE_ITEM);
	Obj_Delete(Enemy);
	//loop(60){yield;}
	CloseScript(GetOwnScriptID);
}
function wait(t){loop(t){yield;}}

task ShootBullets{
//Preparation
talk;
loop{
//SE(CSD~"sfx/tan00.wav");
if(ObjEnemy_GetInfo(Enemy, INFO_LIFE) == 0){break;}
 
 
wait(2);
}
}

sub talk{
/*
Set"x"Port"N"(Marisa15);
*/
	let gusano = CSD~"img/gusano.png";//gusano
	let mai = CSD~"img/mai.png";//mai
	let angel = CSD~"img/angel.png";//angel
	let edorev = CSD~"img/endo.png";//edorev
	let mogel = CSD~"img/mogel.png";//mogel

	SetCommonData("OnEvent",true);
	StartEvent;
	SetPlayerNumber(1);
	SetEnemyNumber(1);
	
	//SetNewPlayerPort1(Alice2);
	if(GetAreaCommonData("Datos Del Juego","Personaje",defchar) ==0){
	SetNewPlayerPort1(gusano);
	SetEventSpeaker(PLAYER1_SPEAKS);
	ObjMove_SetDestAtWeight(Enemy, GetStgFrameWidth/2, 100, 20,11);
	SetEventTextA(SAY_YELLOW, "Mira la casualidad, Otro bicho[r]raro!");
	SetNewEnemyPort1(mogel);
	SetEventSpeaker(ENEMY1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "...");
	SetEventSpeaker(PLAYER1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "Espero que tu no quieras pelea[r]tambien");
	SetEventTextA(SAY_YELLOW, "Me estan dando ganas de irme a[r]la cama");
	SetEventTextA(SAY_YELLOW, "Porque, por si nadie se ha dado[r]cuenta,estoy de vacaciones!");
	SetEventSpeaker(ENEMY1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "...");
	SetEventSpeaker(PLAYER1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "Quiero decir, he vencido a Dark[r]Kevin, mi mejor amigo,poseido");
	SetEventTextA(SAY_YELLOW, "y todo lo que me haceis es [r]meterme mas adversarios?");
	SetEventTextA(SAY_YELLOW, "Solo quiero darme una ducha bien [r]caliente,");
	SetEventTextA(SAY_YELLOW, "Dormir mis correspondientes diez [r]horas bajo una cama comoda,");
	SetEventTextA(SAY_YELLOW, "Obtener una cita con la chica que[r]me gusta, si no, una cita con Mai");
	SetEventTextA(SAY_YELLOW, "Entrenar un monton mas para poder[r]obtener el control de gusanos,");
	SetEventTextA(SAY_YELLOW, "Descubrir todos los MALDITOS [r]misterios que mi casa tiene,");
	SetEventTextA(SAY_YELLOW, "Apostar todo el dinero que [r]nunca tuve en mi vida");
	SetEventTextA(SAY_YELLOW, "Aunque esto signifique escapar de[r]mafiosos en lo que me queda");
	SetEventTextA(SAY_YELLOW, "Es tanto pedir?");
	SetEventSpeaker(ENEMY1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "...");
	SetEventSpeaker(PLAYER1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "... Y eso. Tienes idea de donde[r]esta el hotel?");
	SetEventSpeaker(ENEMY1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "...");
	SetEventSpeaker(PLAYER1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "Que?, Al fin me vas a decir donde[r]hay una cama?");
	SetEventSpeaker(ENEMY1_SPEAKS);
    SetEventTextA(SAY_RED, "Me gusta tu pasion,no se lo que[r]es la pasion");
	SetEventTextA(SAY_RED, "Pero algo me dice que lo[r]aprendere de ti");
	SetEventSpeaker(PLAYER1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "... por que a mi?");
	}
	else{
	SetNewPlayerPort1(mai);
	SetEventSpeaker(PLAYER1_SPEAKS);
	ObjMove_SetDestAtWeight(Enemy, GetStgFrameWidth/2, 100, 20,11);
	SetEventTextA(SAY_YELLOW, "Mira tu, otro rival en linea");
	SetNewEnemyPort1(mogel);
	SetEventSpeaker(ENEMY1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "...");
	SetEventSpeaker(PLAYER1_SPEAKS);
	SetEventTextA(SAY_YELLOW, "Que, acaso eres muda?");
	SetEventTextA(SAY_YELLOW, "Quieres algo para comer?");
	SetEventTextA(SAY_YELLOW, "Queres ir al WC?");
	SetEventSpeaker(ENEMY1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "...");
	SetEventSpeaker(PLAYER1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "Sabes donde esta?");
	SetEventTextA(SAY_YELLOW, "Mira, si no sabes hablar, mejor[r]quitate del camino");
	SetEventTextA(SAY_YELLOW, "...Pensandolo bien, debes ser un[r]robot o algo...");
	SetEventTextA(THINK_WHITE, "Tal vez habla otro idioma quizas");
	SetEventTextA(SAY_YELLOW, "Hey you,get out of my way!");
	SetEventSpeaker(ENEMY1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "...");
	SetEventTextA(SAY_YELLOW, "...");
SetEventSpeaker(PLAYER1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "Por lo menos, te puedes quitar[r]del camino?");
	SetEventTextA(SAY_YELLOW, "Te lo estoy pidiendo amablemente,[r]por favor");
	SetEventTextA(SAY_YELLOW, "Si no, voy a tener que acabar[r]contigo!");
	SetEventSpeaker(ENEMY1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "...");
	SetEventTextA(SAY_YELLOW, "...");
	SetEventSpeaker(PLAYER1_SPEAKS);
	SetEventTextA(SAY_YELLOW, "Sabes que estoy en una situacion[r]urgente!?");
	SetEventTextA(SAY_YELLOW, "Mi mejor amigo esta en problemas[r]y tengo que ayudarlo!");
	SetEventTextA(SAY_YELLOW, "Porque los amigos se ayudan entre[r]si, no entiendes?");
	SetEventTextA(SAY_YELLOW, "En especial Gusano, el es buena[r]persona, un buen amigo");
	SetEventTextA(SAY_YELLOW, "Aunque tal vez podamos ser mas[r]que amigos...");
	SetEventTextA(SAY_YELLOW, "Es que es muy bonito y valiente");
	SetEventTextA(SAY_YELLOW, "Lo quiero taaaaanto!, ups, creo[r]que dije demasiado (:S)");
	SetEventSpeaker(ENEMY1_SPEAKS);
    SetEventTextA(SAY_YELLOW, "Tu amor es muy intenso,pues yo[r]no se que es el amor");
	SetEventSpeaker(PLAYER1_SPEAKS);
	SetEventTextA(SAY_YELLOW, "Y ahora te pones a hablar...");
	SetEventSpeaker(ENEMY1_SPEAKS);
    SetEventTextA(SAY_RED, "Algo aprendere de tu amor al[r]deborarte!");
	SetEventSpeaker(PLAYER1_SPEAKS);
	SetEventTextA(SAY_YELLOW, "No otra vez...");
	}
	EndEvent;
	SetCommonData("OnEvent",false);
	ObjEnemy_SetLife(Enemy,0);
}

task DelayPosition(obj,x,y){
wait(90);
ObjMove_SetPosition(obj,x,y);
name("Angel",0,30);
}