using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using System;
namespace YLBattle
{
public interface IBattleGlobalOper
{
#region 测试
///
/// 己方胜利结束战斗
///
///
///
void TestModifyBattleResult(bool _bol);
///
/// 修改数值
///
///
///
void TestModifyPower(string who);
///
///
///
///
///
void TestCastSkill(string who, string skilltid);
#endregion
#region 战场相关
///
/// 战斗暂停
///
void Pause();
///
/// 战斗继续
///
void Continue();
///
/// 强制结束本次战斗
///
void Quit();
///
/// 设置倍速
///
/// true开启, false关闭
void SetSecSpeed(bool enable);
///
/// 获得连击伤害率
///
int GetLianJiDamageRate();
///
/// 获取当前power概率
///
float GetBluePowerRate();
///
/// 获取当前power概率
///
float GetBlueSkillPowerRate();
///
/// 获取当前power概率
///
float GetRedSkillPowerRate();
///
/// 获取当前power(技能)值
///
float GetBlueSkillPower();
///
/// 获取连击计数
///
int GetLianJiCount();
///
/// 连击计数
///
void SetLianJiCount();
///
/// 战斗场景准备完毕
///
///
bool GetBattleFieldReadyOver();
#endregion
#region UI通知事件
///
/// UI确认点击时间
///
void ConfirmUIClickCritical(string targetId);
///
/// 战斗警示确认完成
///
void ConfirmBattleWarningComplete();
///
/// 战斗警示确认完成
///
void ConfirmBattleCriticalTipComplete();
///
/// 必杀(地图)确认完成
///
void ConfirmBattleMapDragComplete();
///
/// 战斗警示确认完成
///
void ConfirmBattleSkillComplete();
///
/// 确认技能释放完毕
///
void ConfirmSkillBombComplete(string who, string _skillId);
///
/// 当前战场策略
///
///
EBattleStaus GetFieldPolicyType();
///
/// 确认boss介绍窗体点击事件
///
void ConfirmBossDescriptionClickTrigger();
///
/// 战斗Boss技能警示确认完成
///
void ConfirmBattleBossSkillComplete(string who, string _strSkill);
#endregion
#region 战斗对象
///
/// 修改指定战斗对象位置信息
///
/// 对象编号
/// x坐标
/// y坐标
void ModifyFighterPosition(string id, float x, float y);
///
/// 获取指定对象属性
///
/// 对象实例id
/// 属性类型
/// 属性值
float GetFighterProperty(string id, EBattleProperty tp);
///
/// 通过monster占位获得plat偏移
///
///
///
int GetMonsterPlatOffset(int _seat);
///
/// 每回合修复所有角色的冷却回合数和Power值属性
///
//void ModifyFighterProAtRound();
///
/// 获得指定队列
///
///
float GetTeamHp(EBattleTeam team);
///
/// 寻求朋友帮助
///
/// 占位
void SetFriendHelp(int seat);
#endregion
#region 技能
///
/// 释放技能
///
///
///
/// 0=普攻 1=技能
/// 触发参数
void OnCastBullet(string who, string skillTid, string trg = "", bool isMarkTrg = false);
///
/// 触发被动技能
///
/// 当前事件类型
/// 事件参数
/// 释放者
/// 受影响ID列
void OnTriggerPassiveSkill(int triggerType, string triggerParm = "", string casterId = "", string targetIds = "");
///
/// 释放技能
///
///
//void OnCastSkillByConsumePower(string who, bool ismark = false);
///
/// [UI]角色释放必杀技能准备【提示】
///
/// 释放者
void OnManualSkillTipFromUnity(string who);
///
/// 是否可释放技能
///
///
///
bool ToCheckCouldCastSkill(string who);
///
/// [SkillControl.createSkillExplode]子弹碰撞事件
///
/// 子弹实例ID
/// 碰撞到的目标实例ID, 没有则传递string.Empty
void OnBulletCollideEvent(string id, string target);
///
/// [Bullet=>ProjectileBase-Update]修改子弹当前位置
///
/// 子弹实例ID
/// 坐标
void ModifyBulletPostion(string id, Vector3 pos);
///
/// 标记子弹为消亡状态
///
/// 子弹实例ID
void MarkBulletDead(string id);
#endregion
}
}