当前位置: 首页>>代码示例>>C#>>正文


C# EntityInfo.GetCampId方法代码示例

本文整理汇总了C#中GameFramework.EntityInfo.GetCampId方法的典型用法代码示例。如果您正苦于以下问题:C# EntityInfo.GetCampId方法的具体用法?C# EntityInfo.GetCampId怎么用?C# EntityInfo.GetCampId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在GameFramework.EntityInfo的用法示例。


在下文中一共展示了EntityInfo.GetCampId方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: BuildCreateNpcMessage

        internal static Msg_RC_CreateNpc BuildCreateNpcMessage(EntityInfo npc, int rate = -1)
        {
            Msg_RC_CreateNpc bder = new Msg_RC_CreateNpc();
            bder.npc_id = npc.GetId();
            bder.unit_id = npc.GetUnitId();
            ScriptRuntime.Vector3 pos = npc.GetMovementStateInfo().GetPosition3D();
            GameFrameworkMessage.Position pos_bd = new GameFrameworkMessage.Position();
            pos_bd.x = (float)pos.X;
            pos_bd.z = (float)pos.Z;
            bder.cur_pos = pos_bd;
            bder.face_direction = (float)npc.GetMovementStateInfo().GetFaceDir();
            bder.link_id = npc.GetLinkId();
            bder.camp_id = npc.GetCampId();
            if (npc.OwnerId > 0) {
                bder.owner_id = npc.OwnerId;
            }
            if (npc.GetAiStateInfo().LeaderID > 0) {
                bder.leader_id = npc.GetAiStateInfo().LeaderID;
            }
            User user = npc.CustomData as User;
            if (null != user) {
                bder.key = user.GetKey();
            }
            bder.level = npc.GetLevel();

            return bder;
        }
开发者ID:dreamanlan,项目名称:CSharpGameFramework,代码行数:27,代码来源:DataSyncUtility.cs

示例2: BuildCampChangedMessage

 internal static Msg_RC_CampChanged BuildCampChangedMessage(EntityInfo obj)
 {
     Msg_RC_CampChanged msg = new Msg_RC_CampChanged();
     msg.obj_id = obj.GetId();
     msg.camp_id = obj.GetCampId();
     return msg;
 }
开发者ID:dreamanlan,项目名称:CSharpGameFramework,代码行数:7,代码来源:DataSyncUtility.cs

示例3: CanSee

 private static bool CanSee(EntityInfo src, EntityInfo target)
 {
     int srcCampId = src.GetCampId();
     int targetCampId = target.GetCampId();
     if (srcCampId == targetCampId)
         return true;
     else if (srcCampId == (int)CampIdEnum.Hostile || targetCampId == (int)CampIdEnum.Hostile) {
         return EntityInfo.CanSee(src, target);
     } else {
         return true;
     }
 }
开发者ID:dreamanlan,项目名称:CSharpGameFramework,代码行数:12,代码来源:AiLogicUtility.cs

示例4: GetRelation

        //阵营可为Friendly、Hostile、Blue、Red
        //Friendly 全部友好
        //Hostile 全部敌对(同阵营友好)
        //Blue 与Hostile与Red敌对
        //Red 与Hostile与Blue敌对
        public static CharacterRelation GetRelation(EntityInfo pObj_A, EntityInfo pObj_B)
        {
            if (pObj_A == null || pObj_B == null) {
                return CharacterRelation.RELATION_INVALID;
            }

            if (pObj_A == pObj_B) {
                return CharacterRelation.RELATION_FRIEND;
            }

            int campA = pObj_A.GetCampId();
            int campB = pObj_B.GetCampId();
            CharacterRelation relation = GetRelation(campA, campB);
            return relation;
        }
开发者ID:dreamanlan,项目名称:CSharpGameFramework,代码行数:20,代码来源:Entity_Base.cs

示例5: CanSee

 public static bool CanSee(EntityInfo source, EntityInfo target, float distSqr, Vector3 pos1, Vector3 pos2)
 {
     bool ret = false;
     if (null != source && null != target) {
         //一、先判断距离
         if (distSqr < source.ViewRange * source.ViewRange) {
             //二、再判断逻辑
             //后面修改的同学注意下:
             //1、我们目前的object层是数据接口层,是不需要使用多态的。概念变化的可能性比功能变化的可能性要小很多,所以我们将多态机制应用到Logic里。
             //2、逻辑上的影响可能是对象buff或类型产生,如果判断逻辑比较复杂,采用结构化编程的风格拆分成多个函数即可。
             //3、另一个不建议用多态理由是这个函数的调用频率会很高。
             if (source.GetCampId() == target.GetCampId() ||
               (!target.IsHaveStateFlag(CharacterState_Type.CST_Hidden))) {//隐身状态判断(未考虑反隐)
                 ret = true;//移动版本不计算视野,只考虑逻辑上的几个点供ai用
             }
         }
     }
     return ret;
 }
开发者ID:dreamanlan,项目名称:CSharpGameFramework,代码行数:19,代码来源:Entity_Base.cs

示例6: GetCampId

 internal int GetCampId(EntityInfo obj)
 {
     int campId = 0;
     if (null != obj) {
         campId = obj.GetCampId();
     }
     return campId;
 }
开发者ID:dreamanlan,项目名称:CSharpGameFramework,代码行数:8,代码来源:EntityController.cs


注:本文中的GameFramework.EntityInfo.GetCampId方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。