/// <summary> /// 初始化所有的属性,包括引用类型的属性自己的属性 /// </summary> public override void ReInitializeAllProperties() { if (CreateInfo != null) { CreateInfo.ReInitializeAllProperties(); } if (AuditInfo != null) { AuditInfo.ReInitializeAllProperties(); } if (ExecuteInfo != null) { ExecuteInfo.ReInitializeAllProperties(); } if (CancelInfo != null) { CancelInfo.ReInitializeAllProperties(); } if (OriginalDepartment != null) { OriginalDepartment.ReInitializeAllProperties(); } if (OriginalWard != null) { OriginalWard.ReInitializeAllProperties(); } if (ExecuteDept != null) { ExecuteDept.ReInitializeAllProperties(); } }
private void InitializeExecuteSequence() { executeSequence = new List <ExecuteInfo>(); string[] orders = attackPattern.PatternProgressOrders; for (int i = 0; i < orders.Length; ++i) { ExecuteInfo newOrder = new ExecuteInfo(); string[] splitedInfo = orders[i].Split(','); string patternType = splitedInfo[0]; int patternIndex = int.Parse(splitedInfo[1]); float executeDelay = float.Parse(splitedInfo[2]); if (patternType.Equals("Instant")) { newOrder.StartAction = instantAttacks[patternIndex].Execute; } else if (patternType.Equals("Projectile")) { newOrder.StartAction = projectileAttacks[patternIndex].Execute; } newOrder.ExecuteDelay = executeDelay; executeSequence.Add(newOrder); } }
private string FindFileNameInFiles(ExecuteInfo info, bool throwException = true) { var root = "Views"; if (Development.IsAttached) { root = Path.Combine(Development.GetProjectDirectory(), root); } var command = this.GetTypeName(info.Type) + "/"; var method = this.GetMethodName(info.Method); string fileNameLevel0 = method; string fileNameLevel1 = root + "/" + method; string fileNameLevel2 = root + "/" + command + method; if (FileHelper.FileExists(fileNameLevel2)) { return(NormalizePath(fileNameLevel2)); } else if (FileHelper.FileExists(fileNameLevel1)) { return(NormalizePath(fileNameLevel1)); } else if (FileHelper.FileExists(fileNameLevel0)) { return(NormalizePath(fileNameLevel0)); } if (throwException) { this.ThrowFindContentInFiles(); } return(null); }
public ProjectileInfo(Action_EmitProjectile parentAction, ExecuteInfo executeInfo, Transform chasingTarget, Vector3 chasingPosition) { ParentAction = parentAction; ParentExecuteInfo = executeInfo; ChasingTarget = chasingTarget; ChasingPosition = chasingPosition; }
public void AddExecute(IEnumerator e, Action onEnd) { ExecuteInfo executeInfo = new ExecuteInfo() { enumerator = e, onEndFunc = onEnd }; executeInfos.Add(executeInfo); }
public async Task <string> ProcessByViewNameAsync <T>(T model, ExecuteInfo info, bool useModel, bool searchOnlyInResources = false) { if (searchOnlyInResources) { var content = this.FindContentInResourse(info); if (useModel) { return(await template.ParseContentAsync(content, model)); } else { return(await template.ParseContentAsync(content)); } } else { var fileName = this.FindFileNameInFiles(info, false); if (fileName == null) { var content = this.FindContentInResourse(info, false); if (content == null) { this.ThrowFindContentInFiles(); } if (useModel) { return(await template.ParseContentAsync(content, model)); } else { return(await template.ParseContentAsync(content)); } } else { if (useModel) { return(await template.ParseAsync(fileName, model)); } else { return(await template.ParseAsync(fileName)); } } } }
public string FindContentInResourse(ExecuteInfo info, bool throwException = true) { var viewName = this.GetTypeName(info.Type) + "." + this.GetMethodName(info.Method); var content = FindContentInResourse(viewName, false); if (content == null) { viewName = this.GetMethodName(info.Method); content = FindContentInResourse(viewName, false); } if (content == null && throwException) { ThrowFindContentInResourse(viewName); } return(content); }