private static string ToTrigger() { if (trigger is GameTrigger) { GameTrigger gt = (GameTrigger)trigger; return(string.Format("触发器:{0} 触发类型:{1} 分类:{2} 规则:{3}", gt.GetName(), gt.GetKey(), gt.GetGroup(), gt.GetRule())); } else if (trigger is string) { return((string)trigger); } else if (trigger is FreeEntityData) { FreeEntityData move = (FreeEntityData)trigger; return(string.Format("FreeMove:{0}", move.name)); } else if (trigger is ISkill) { ISkill skill = (ISkill)trigger; string key = skill.GetKey() != null?skill.GetKey() : string.Empty; if (skill is AbstractCoolDownSkill) { PlayerActionSkill cooldown = (PlayerActionSkill)skill; string skillTrigger = cooldown.trigger != null?cooldown.trigger.ToString() : string.Empty; return(string.Format("动作技能:{0}, 触发:{1}", cooldown.GetKey(), skillTrigger)); } else { return(string.Format("技能:{0}", skill.GetKey())); } } else if (trigger is FreeBuf) { FreeBuf buf = (FreeBuf)trigger; return(string.Format("Buf:{0}", buf.GetKey())); } return(string.Empty); }