public void OnSyncedTriggerEnter(TSCollision other) { int otherLayerMask = (int)Math.Pow(2, other.gameObject.layer); Debug.LogErrorFormat("houyiBullet====>Trigger Enter==>{0},{1},{2}", otherLayerMask, other.gameObject.name, LayerMask.GetMask("Role")); if (otherLayerMask == LayerMask.GetMask("Role")) { Actor mActor = other.gameObject.GetComponent <Actor>(); Debug.LogErrorFormat("houyiBullet====>TriggerEnter==>自己阵营:{0},对方阵营={1}", OwnerCamp, mActor.OwnerCamp); if (OwnerCamp != mActor.OwnerCamp) { mActor.mActorAttr.Hp -= 10; TrueSyncManager.SyncedDestroy(gameObject); } } else if (otherLayerMask == LayerMask.GetMask("Monsters")) { YeGuaiAI mYeGuaiAI = other.gameObject.GetComponent <YeGuaiAI>(); mYeGuaiAI.AddHp(-10, OwnerID); } else if (otherLayerMask == LayerMask.GetMask("GroundWall")) { TrueSyncManager.SyncedDestroy(gameObject); } }
public void OnSyncedTriggerStay(TSCollision other) { if (SelfTick % 10 != 0) { return; } int otherLayerMask = (int)Math.Pow(2, other.gameObject.layer); //Debug.LogErrorFormat("houyiDarkArea====>Trigger Stay==>{0},{1}", otherLayerMask, other.gameObject.name); if (otherLayerMask == LayerMask.GetMask("Role")) { Actor mActor = other.gameObject.GetComponent <Actor>(); //Debug.LogErrorFormat("houyiDarkArea====>TriggerEnter==>自己阵营:{0},对方阵营={1}", OwnerCamp, mActor.OwnerCamp); if (OwnerCamp != mActor.OwnerCamp) { mActor.mActorAttr.Hp -= 5; } } else if (otherLayerMask == LayerMask.GetMask("Monsters")) { YeGuaiAI mYeGuaiAI = other.gameObject.GetComponent <YeGuaiAI>(); mYeGuaiAI.AddHp(-5, OwnerID); } }
private void StartGenerateYeGuai() { WillUsedPrefabs[0].SetActive(true); //如果带了刚体等组件的,需要先激活再实例化,不然这些组件无法注册到系统中(子弹这种只有trigger的,可以不先激活) YeGuaiAI mYeGuaiAI = WillUsedPrefabs[0].gameObject.GetComponent <YeGuaiAI>(); Debug.LogErrorFormat("StartGenerateYeGuai====>{0}", TrueSyncManager.Ticks); mYeGuaiAI.mBackPosition = new TSVector(3, 0, 3); GameObject yeguai_prefab1 = TrueSyncManager.SyncedInstantiate(WillUsedPrefabs[0], new TSVector(3, 0, 3), TSQuaternion.identity); YeGuaiAI mYeGuaiAI1 = yeguai_prefab1.GetComponent <YeGuaiAI>(); mYeGuaiAI1.OwnerID = NewMonsterID(); AddMonsterActor(mYeGuaiAI1.OwnerID, (Actor)mYeGuaiAI1); mYeGuaiAI.mBackPosition = new TSVector(-3, 0, -3); GameObject yeguai_prefab2 = TrueSyncManager.SyncedInstantiate(WillUsedPrefabs[0], new TSVector(-3, 0, -3), TSQuaternion.identity); YeGuaiAI mYeGuaiAI2 = yeguai_prefab2.GetComponent <YeGuaiAI>(); mYeGuaiAI2.OwnerID = NewMonsterID(); AddMonsterActor(mYeGuaiAI2.OwnerID, (Actor)mYeGuaiAI2); mYeGuaiAI.mBackPosition = new TSVector(-3, 0, 3); GameObject yeguai_prefab3 = TrueSyncManager.SyncedInstantiate(WillUsedPrefabs[0], new TSVector(-3, 0, 3), TSQuaternion.identity); YeGuaiAI mYeGuaiAI3 = yeguai_prefab3.GetComponent <YeGuaiAI>(); mYeGuaiAI3.OwnerID = NewMonsterID(); AddMonsterActor(mYeGuaiAI3.OwnerID, (Actor)mYeGuaiAI3); mYeGuaiAI.mBackPosition = new TSVector(3, 0, -3); GameObject yeguai_prefab4 = TrueSyncManager.SyncedInstantiate(WillUsedPrefabs[0], new TSVector(3, 0, -3), TSQuaternion.identity); YeGuaiAI mYeGuaiAI4 = yeguai_prefab4.GetComponent <YeGuaiAI>(); mYeGuaiAI4.OwnerID = NewMonsterID(); AddMonsterActor(mYeGuaiAI4.OwnerID, (Actor)mYeGuaiAI4); WillUsedPrefabs[0].SetActive(false); }
public override bool Load() { AgentMeta.TotalSignature = 3127239922; AgentMeta meta; // behaviac.Agent meta = new AgentMeta(24743406); AgentMeta._AgentMetas_[2436498804] = meta; meta.RegisterMethod(1045109914, new CAgentStaticMethodVoid <string>(delegate(string param0) { behaviac.Agent.LogMessage(param0); })); meta.RegisterMethod(2521019022, new CMethod_behaviac_Agent_VectorAdd()); meta.RegisterMethod(2306090221, new CMethod_behaviac_Agent_VectorClear()); meta.RegisterMethod(3483755530, new CMethod_behaviac_Agent_VectorContains()); meta.RegisterMethod(505785840, new CMethod_behaviac_Agent_VectorLength()); meta.RegisterMethod(502968959, new CMethod_behaviac_Agent_VectorRemove()); // YeGuaiAI meta = new AgentMeta(2087531885); AgentMeta._AgentMetas_[957028571] = meta; meta.RegisterMethod(3127879122, new CAgentMethodVoid(delegate(Agent self) { ((YeGuaiAI)self).Attack(); })); meta.RegisterMethod(1881567850, new CAgentMethod <behaviac.EBTStatus>(delegate(Agent self) { return(((YeGuaiAI)self).BackHome()); })); meta.RegisterMethod(3161391891, new CAgentMethod <behaviac.EBTStatus>(delegate(Agent self) { return(((YeGuaiAI)self).FindEnmey()); })); meta.RegisterMethod(3117059018, new CAgentMethod <behaviac.EBTStatus>(delegate(Agent self) { return(((YeGuaiAI)self).IsOutRang()); })); meta.RegisterMethod(1045109914, new CAgentStaticMethodVoid <string>(delegate(string param0) { YeGuaiAI.LogMessage(param0); })); meta.RegisterMethod(3293930300, new CAgentMethod <bool>(delegate(Agent self) { return(((YeGuaiAI)self).PursuitOrAttack()); })); meta.RegisterMethod(1206096729, new CAgentMethodVoid(delegate(Agent self) { ((YeGuaiAI)self).Pursuit(); })); meta.RegisterMethod(2521019022, new CMethod_behaviac_Agent_VectorAdd()); meta.RegisterMethod(2306090221, new CMethod_behaviac_Agent_VectorClear()); meta.RegisterMethod(3483755530, new CMethod_behaviac_Agent_VectorContains()); meta.RegisterMethod(505785840, new CMethod_behaviac_Agent_VectorLength()); meta.RegisterMethod(502968959, new CMethod_behaviac_Agent_VectorRemove()); AgentMeta.Register <behaviac.Agent>("behaviac.Agent"); AgentMeta.Register <YeGuaiAI>("YeGuaiAI"); Agent.RegisterInstanceName <YeGuaiAI>("YeGuaiAI"); behaviac.Workspace.Instance.UseIntValue = true; return(true); }