Inheritance: Object
Example #1
0
        public void OnClassHandler(NFGUID self, int nContainerID, int nGroupID, NFIObject.CLASS_EVENT_TYPE eType, string strClassName, string strConfigIndex)
        {
            if (eType == NFIObject.CLASS_EVENT_TYPE.OBJECT_CREATE)
            {
                NFIObject xObject = NFCKernelModule.Instance.GetObject(self);

                NFIPropertyManager xPropertyManager = xObject.GetPropertyManager();
                NFIDataList xPropertyNameList = xPropertyManager.GetPropertyList();
                for (int i = 0; i < xPropertyNameList.Count(); i++)
                {
                    string strPropertyName = xPropertyNameList.StringVal(i);
                    NFIProperty xProperty = xPropertyManager.GetProperty(strPropertyName);
                    if (xProperty.GetUpload())
                    {
                        xProperty.RegisterCallback(OnPropertyHandler);
                    }
                }

                NFIRecordManager xRecordManager = xObject.GetRecordManager();
                NFIDataList xRecordNameList = xRecordManager.GetRecordList();
                for (int i = 0; i < xRecordNameList.Count(); i++)
                {
                    string strRecodeName = xRecordNameList.StringVal(i);
                    NFIRecord xRecord = xRecordManager.GetRecord(strRecodeName);
                    if(xRecord.GetUpload())
                    {
                        xRecord.RegisterCallback(OnRecordHandler);
                    }
                }
            }
        }
Example #2
0
        //有可能是他副本的NPC移动,因此增加64对象ID
        public void RequireUseSkill(NFrame.NFGUID objectID, string strKillID, Int32 index, List <NFrame.NFGUID> nTargetIDList)
        {
            NFMsg.ReqAckUseSkill xData = new NFMsg.ReqAckUseSkill();
            xData.user      = NFNetController.NFToPB(objectID);
            xData.skill_id  = System.Text.Encoding.Default.GetBytes(strKillID);
            xData.use_index = index;

            if (nTargetIDList != null)
            {
                foreach (NFGUID id in nTargetIDList)
                {
                    NFMsg.EffectData xEffData = new NFMsg.EffectData();
                    xEffData.effect_ident = (NFNetController.NFToPB(id));
                    xEffData.effect_value = 0;
                    xEffData.effect_rlt   = 0;

                    xData.effect_data.Add(xEffData);
                }
            }

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);


            SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_SKILL_OBJECTX, mxBody);
        }
    //有可能是他副本的NPC移动,因此增加64对象ID
    public void RequireUseSkill(NFrame.NFGUID objectID, string strKillID, NFrame.NFGUID nTargetID, float fNowX, float fNowZ, float fTarX, float fTarZ)
    {
        NFMsg.Position xNowPos = new NFMsg.Position();
        NFMsg.Position xTarPos = new NFMsg.Position();

        xNowPos.x = fNowX;
        xNowPos.y = 0.0f;
        xNowPos.z = fNowZ;
        xTarPos.x = fTarX;
        xTarPos.y = 0.0f;
        xTarPos.z = fTarZ;

        NFMsg.ReqAckUseSkill xData = new NFMsg.ReqAckUseSkill();
        xData.user     = NFToPB(objectID);
        xData.skill_id = System.Text.Encoding.Default.GetBytes(strKillID);
        xData.tar_pos  = xTarPos;
        xData.now_pos  = xNowPos;

        NFMsg.EffectData xEffData = new NFMsg.EffectData();
        xEffData.effect_ident = (NFToPB(nTargetID));
        xEffData.effect_value = 0;
        xEffData.effect_rlt   = 0;

        xData.effect_data.Add(xEffData);


        MemoryStream stream = new MemoryStream();

        Serializer.Serialize <NFMsg.ReqAckUseSkill>(stream, xData);

        SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_SKILL_OBJECTX, stream);
    }
    public void SendMsg(NFrame.NFGUID xID, NFMsg.EGameMsgID unMsgID, MemoryStream stream)
    {
        if (NFStart.Instance.bDebugMode)
        {
            return;
        }

        NFMsg.MsgBase xData = new NFMsg.MsgBase();
        xData.player_id = NFToPB(xID);
        xData.msg_data  = stream.ToArray();

        MemoryStream body = new MemoryStream();

        Serializer.Serialize <NFMsg.MsgBase>(body, xData);

        MsgHead head = new MsgHead();

        head.unMsgID   = (UInt16)unMsgID;
        head.unDataLen = (UInt32)body.Length + (UInt32)ConstDefine.NF_PACKET_HEAD_SIZE;

        byte[] bodyByte = body.ToArray();
        byte[] headByte = StructureTransform.StructureToByteArrayEndian(head);


        byte[] sendBytes = new byte[head.unDataLen];
        headByte.CopyTo(sendBytes, 0);
        bodyByte.CopyTo(sendBytes, headByte.Length);

        xNet.mxClient.SendBytes(sendBytes);

        string strTime = DateTime.Now.Hour + ":" + DateTime.Now.Minute + ":" + DateTime.Now.Second;
        string strData = "S***:" + strTime + " MsgID:" + head.unMsgID + " Len:" + head.unDataLen;

        xNet.mxListener.aMsgList.Add(strData);
    }
Example #5
0
        public bool Parse(string strData, out NFGUID id)
        {
            NFGUID xId = new NFGUID();
            id = xId;

            string[] strList = strData.Split('-');
            if (strList.Count() != 2)
            {
                return false;
            }

            Int64 nHead = 0;
            if (!Int64.TryParse(strList[0], out nHead))
            {
                return false;
            }

            Int64 nData = 0;
            if (!Int64.TryParse(strList[1], out nData))
            {
                return false;
            }

            id.nHead64 = nHead;
            id.nData64 = nData;

            return true;
        }
Example #6
0
		public NFCRecord(NFGUID self, string strRecordName, int nRow, NFIDataList varData)
		{
			mSelf = self;
			mnRow = nRow;
			mstrRecordName = strRecordName;
            mVarRecordType = new NFCDataList(varData);
		}
    private void OnClassNPCEventHandler(NFGUID self, int nContainerID, int nGroupID, NFIObject.CLASS_EVENT_TYPE eType, string strClassName, string strConfigIndex)
    {
        if (eType == NFIObject.CLASS_EVENT_TYPE.OBJECT_CREATE)
        {
            string strConfigID = NFCKernelModule.Instance.QueryPropertyString(self, "ConfigID");
            Vector3 vec = new Vector3();
            vec.x = (float)NFCKernelModule.Instance.QueryPropertyFloat(self, "X");
            vec.y = (float)NFCKernelModule.Instance.QueryPropertyFloat(self, "Y");
            vec.z = (float)NFCKernelModule.Instance.QueryPropertyFloat(self, "Z");

            string strPrefabPath = "";
            if (strConfigID.Length <= 0)
            {
                strPrefabPath = NFCKernelModule.Instance.GetElementModule().QueryPropertyString("Player", "Prefab");
            }
            else
            {
                strPrefabPath = NFCKernelModule.Instance.GetElementModule().QueryPropertyString(strConfigID, "Prefab");
            }

            //CreateObject(self, strPrefabPath, vec, strClassName);
        }
        else if (eType == NFIObject.CLASS_EVENT_TYPE.OBJECT_DESTROY)
        {
            //DestroyObject(self);
        }
        
    }
Example #8
0
 public void UseItem(NFrame.NFGUID ident, string strItemConfigID)
 {
     if (mhtObject.ContainsKey(ident))
     {
         GameObject xGameObject = (GameObject)mhtObject[ident];
     }
 }
Example #9
0
        public void SendMsg(NFrame.NFGUID xID, NFMsg.EGameMsgID unMsgID, MemoryStream stream)
        {
            mxData.player_id = NFNetController.NFToPB(xID);
            mxData.msg_data  = stream.ToArray();

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, mxData);

            mxHead.unMsgID   = (UInt16)unMsgID;
            mxHead.unDataLen = (UInt32)mxBody.Length + (UInt32)ConstDefine.NF_PACKET_HEAD_SIZE;

            byte[] bodyByte = mxBody.ToArray();
            byte[] headByte = mxHead.EnCode();

            byte[] sendBytes = new byte[mxHead.unDataLen];
            headByte.CopyTo(sendBytes, 0);
            bodyByte.CopyTo(sendBytes, headByte.Length);

            mxNetController.mxNetClient.SendBytes(sendBytes);

            /////////////////////////////////////////////////////////////////


            NFLog.Instance.Log(NFLog.LOG_LEVEL.INFO, "SendMsg:" + unMsgID);
        }
Example #10
0
        public NFCProperty( NFGUID self, string strPropertyName, NFIDataList varData)
        {
            mSelf = self;
            msPropertyName = strPropertyName;
            mxData = new NFIDataList.TData(varData.GetType(0));

            switch (varData.GetType(0))
            {
                case NFIDataList.VARIANT_TYPE.VTYPE_INT:
                    mxData.Set(varData.IntVal(0));
                    break;
                case NFIDataList.VARIANT_TYPE.VTYPE_FLOAT:
                    mxData.Set(varData.FloatVal(0));
                    break;
                case NFIDataList.VARIANT_TYPE.VTYPE_DOUBLE:
                    mxData.Set(varData.DoubleVal(0));
                    break;
                case NFIDataList.VARIANT_TYPE.VTYPE_OBJECT:
                    mxData.Set(varData.ObjectVal(0));
                    break;
                case NFIDataList.VARIANT_TYPE.VTYPE_STRING:
                    mxData.Set(varData.StringVal(0));
                    break;
                default:
                    break;
            }
        }
Example #11
0
        public override NFGUID CreateActor(NFIActor.Handler handler)
        {
            NFGUID xID = new NFGUID(0, ++mnActorIndex);
            NFIActor xActor = new NFCActor(xID, this);

            //添加仍旧有问题,foreach中万一有其他线程添加
            bool bRet = mxActorDic.TryAdd(xID, xActor);
            if (bRet)
            {
                if (null != handler)
                {
                    RegisterHandler(xID, handler);

                    NFIActorMessage xMessage = new NFIActorMessage();
                    xMessage.bAsync = false;//同步消息
                    xMessage.bReturn = false;//无需返回

                    xMessage.eType = NFIActorMessage.EACTOR_MESSAGE_ID.EACTOR_INIT;
                    SendMsg(xActor.GetAddress(), null, xMessage);

                    xMessage.eType = NFIActorMessage.EACTOR_MESSAGE_ID.EACTOR_AFTER_INIT;
                    SendMsg(xActor.GetAddress(), null, xMessage);
                }

                return xID;
            }

            return null;
        }
Example #12
0
        //WSAD移动
        public void RequireMove(NFrame.NFGUID objectID, int nType, UnityEngine.Vector3 vPos, UnityEngine.Vector3 vTar)
        {
            NFMsg.ReqAckPlayerMove xData = new NFMsg.ReqAckPlayerMove();
            xData.mover    = NFNetController.NFToPB(objectID);
            xData.moveType = nType;

            NFMsg.Vector3 xNowPos = new NFMsg.Vector3();
            xNowPos.x = vPos.x;
            xNowPos.y = vPos.y;
            xNowPos.z = vPos.z;
            xData.source_pos.Add(xNowPos);

            NFMsg.Vector3 xTargetPos = new NFMsg.Vector3();
            xTargetPos.x = vTar.x;
            xTargetPos.y = vTar.y;
            xTargetPos.z = vTar.z;
            xData.target_pos.Add(xTargetPos);

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);

            SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_MOVE, mxBody);

            //为了表现,客户端先走,后续同步
        }
Example #13
0
        //WSAD移动
        public void RequireMove(NFrame.NFGUID objectID, int nType, float fPosX, float fPosY, float fTarX, float fTarY)
        {
            NFMsg.ReqAckPlayerMove xData = new NFMsg.ReqAckPlayerMove();
            xData.mover    = NFNetController.NFToPB(objectID);
            xData.moveType = nType;

            NFMsg.Vector3 xNowPos = new NFMsg.Vector3();
            xNowPos.x = fPosX;
            xNowPos.y = 0.0f;
            xNowPos.z = fPosY;
            xData.source_pos.Add(xNowPos);

            NFMsg.Vector3 xTargetPos = new NFMsg.Vector3();
            xTargetPos.x = fTarX;
            xTargetPos.y = 0.0f;
            xTargetPos.z = fTarY;
            xData.target_pos.Add(xTargetPos);

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);

            SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_MOVE, mxBody);

            //为了表现,客户端先走,后续同步
        }
Example #14
0
        static public NFrame.NFGUID PBToNF(NFMsg.Ident xID)
        {
            NFrame.NFGUID xIdent = new NFrame.NFGUID();
            xIdent.nHead64 = xID.svrid;
            xIdent.nData64 = xID.index;

            return xIdent;
        }
Example #15
0
        static public NFMsg.Ident NFToPB(NFrame.NFGUID xID)
        {
            NFMsg.Ident xIdent = new NFMsg.Ident();
            xIdent.svrid = xID.nHead64;
            xIdent.index = xID.nData64;

            return(xIdent);
        }
Example #16
0
 public NFCHeartBeat(NFGUID self, string strHeartBeatName, float fTime, int nCount)
 {
     mSelf = self;
     mstrHeartBeatName = strHeartBeatName;
     mfTime = fTime;
     mfOldTime = fTime;
     mnCount = nCount;
 }
Example #17
0
        static public NFrame.NFGUID PBToNF(NFMsg.Ident xID)
        {
            NFrame.NFGUID xIdent = new NFrame.NFGUID();
            xIdent.nHead64 = xID.svrid;
            xIdent.nData64 = xID.index;

            return(xIdent);
        }
Example #18
0
        //申请状态机同步
        public void RequireStateSync(NFrame.NFGUID objectID, NFMsg.ReqAckPlayerMove xData)
        {
            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);


            SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_STATE_SYNC, mxBody);
        }
Example #19
0
 public void SetVisible(NFrame.NFGUID ident, bool bVisible)
 {
     if (mhtObject.ContainsKey(ident))
     {
         GameObject xGameObject = (GameObject)mhtObject[ident];
         xGameObject.SetActive(bVisible);
     }
 }
Example #20
0
 static void HeartBeatEventHandler(NFGUID self, string strHeartBeat, float fTime, int nRemainCount)
 {
     Console.Write(self);
     Console.Write(" ");
     Console.Write(strHeartBeat);
     Console.Write(" ");
     Console.Write(fTime.ToString());
     Console.WriteLine(" ");
 }
Example #21
0
    public bool MoveImmune(NFrame.NFGUID ident, Vector3 vPos, float fTime, bool bFaceToPos)
    {
        if (mhtObject.ContainsKey(ident))
        {
            GameObject xGameObject = (GameObject)mhtObject[ident];
        }

        return(false);
    }
Example #22
0
    public GameObject GetObject(NFrame.NFGUID ident)
    {
        if (mhtObject.ContainsKey(ident))
        {
            return((GameObject)mhtObject[ident]);
        }

        return(null);
    }
Example #23
0
    public bool AttackObject(NFrame.NFGUID ident, Hashtable beAttackInfo, string strStateName, Hashtable resultInfo)
    {
        if (mhtObject.ContainsKey(ident))
        {
            GameObject xGameObject = (GameObject)mhtObject[ident];
        }

        return(false);
    }
Example #24
0
 static void HeartBeatEventHandler(NFGUID self, string strHeartBeat, float fTime,int nCount)
 {
     Debug.Log(self);
     Debug.Log(" ");
     Debug.Log(strHeartBeat);
     Debug.Log(" ");
     Debug.Log(fTime.ToString());
     Debug.Log(" ");
 }
Example #25
0
		public NFCObject(NFGUID self, int nContainerID, int nGroupID, string strClassName, string strConfigIndex)
		{
			mSelf = self;
            mstrClassName = strClassName;
            mstrConfigIndex = strConfigIndex;
			mnContainerID = nContainerID;
			mnGroupID = nGroupID;
			Init();
		}
Example #26
0
        //申请结束pvp
        public void RequireEndPvp(NFrame.NFGUID objectID)
        {
            NFMsg.ReqEndBattle xData = new NFMsg.ReqEndBattle();

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);

            SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_END_OPPNENT, mxBody);
        }
Example #27
0
        //发送心跳
        public void RequireHeartBeat(NFrame.NFGUID objectID)
        {
            NFMsg.ReqHeartBeat xData = new NFMsg.ReqHeartBeat();

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);

            SendMsg(objectID, NFMsg.EGameMsgID.EGMI_STS_HEART_BEAT, mxBody);
        }
Example #28
0
        //申请查找对手
        public void RequireSearchOppnent(NFrame.NFGUID objectID)
        {
            NFMsg.ReqSearchOppnent xData = new NFMsg.ReqSearchOppnent();

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);

            SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_SEARCH_OPPNENT, mxBody);
        }
 void OnClassHandler(NFGUID self, int nContainerID, int nGroupID, NFIObject.CLASS_EVENT_TYPE eType, string strClassName, string strConfigIndex)
 {
     NFrame.NFGUID xIdent = NFNetController.Instance.xMainRoleID;
     if (self == xIdent)
     {
         if (NFIObject.CLASS_EVENT_TYPE.OBJECT_CREATE_FINISH == eType)
         {
         }
     }
 }
Example #30
0
            public bool Set(NFGUID value)
            {
                if (nType == VARIANT_TYPE.VTYPE_OBJECT)
                {
                    mData = value;
                    return true;
                }

                return false;
            }
Example #31
0
        public void RequireEnterGameFinish(NFrame.NFGUID objectID)
        {
            //only use in the first time when player enter game world
            NFMsg.ReqAckEnterGameSuccess xData = new NFMsg.ReqAckEnterGameSuccess();

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);

            SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_ENTER_GAME_FINISH, mxBody);
        }
    public void RequireHeartBeat(NFrame.NFGUID objectID)
    {
        NFMsg.ReqHeartBeat xData = new NFMsg.ReqHeartBeat();

        MemoryStream stream = new MemoryStream();

        Serializer.Serialize <NFMsg.ReqHeartBeat>(stream, xData);

        SendMsg(objectID, NFMsg.EGameMsgID.EGMI_STS_HEART_BEAT, stream);
    }
Example #33
0
        //申请切换到homescene
        public void RequireSwapToHomeScene(NFrame.NFGUID objectID)
        {
            NFMsg.ReqAckHomeScene xData = new NFMsg.ReqAckHomeScene();


            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);

            SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_SWAP_HOME_SCENE, mxBody);
        }
Example #34
0
 static void OnClassHandler(NFGUID self, int nContainerID, int nGroupID, NFIObject.CLASS_EVENT_TYPE eType, string strClassName, string strConfigIndex)
 {
     Debug.Log(self);
     Debug.Log(" ");
     Debug.Log(eType.ToString());
     Debug.Log(" ");
     Debug.Log(strClassName);
     Debug.Log(" ");
     Debug.Log(strConfigIndex);
     Debug.Log(" ");
 }
    public void RequirePickUpItem(NFrame.NFGUID objectID, NFrame.NFGUID nItemID)
    {
        NFMsg.ReqPickDropItem xData = new NFMsg.ReqPickDropItem();
        xData.item_guid = NFToPB(nItemID);

        MemoryStream stream = new MemoryStream();

        Serializer.Serialize <NFMsg.ReqPickDropItem>(stream, xData);

        SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_PICK_ITEM, stream);
    }
Example #36
0
        //switch fight hero
        public void RequireSwitchFightHero(NFrame.NFGUID objectID, NFrame.NFGUID hero)
        {
            NFMsg.ReqSwitchFightHero xData = new NFMsg.ReqSwitchFightHero();

            xData.Heroid = NFNetController.NFToPB(hero);

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);

            SendMsg(objectID, NFMsg.EGameMsgID.EGEC_REQ_SWITCH_FIGHT_HERO, mxBody);
        }
Example #37
0
 static void OnClassHandler(NFGUID self, int nContainerID, int nGroupID, NFIObject.CLASS_EVENT_TYPE eType, string strClassName, string strConfigIndex)
 {
     Console.Write(self);
     Console.Write(" ");
     Console.Write(eType.ToString());
     Console.Write(" ");
     Console.Write(strClassName);
     Console.Write(" ");
     Console.Write(strConfigIndex);
     Console.WriteLine(" ");
 }
Example #38
0
        //申请开始pvp
        public void RequireStartPVP(NFrame.NFGUID objectID, int nGold, int nDiamond)
        {
            NFMsg.ReqAckStartBattle xData = new NFMsg.ReqAckStartBattle();
            xData.diamond = nDiamond;
            xData.gold    = nGold;

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);

            SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_START_OPPNENT, mxBody);
        }
Example #39
0
 void OnEntryClick(GameObject go)
 {
     if (NFNetController.Instance.aCharList.Count > 0)
     {
         NFMsg.RoleLiteInfo xLiteInfo = (NFMsg.RoleLiteInfo)NFNetController.Instance.aCharList[0];
         NFrame.NFGUID      xEnterID  = new NFrame.NFGUID();
         xEnterID.nData64 = xLiteInfo.id.index;
         xEnterID.nHead64 = xLiteInfo.id.svrid;
         NFNetController.Instance.mxNetSender.RequireEnterGameServer(xEnterID, NFNetController.Instance.strAccount, System.Text.Encoding.Default.GetString(xLiteInfo.noob_name), NFNetController.Instance.nServerID);
     }
 }
Example #40
0
        public void RequirePickUpItem(NFrame.NFGUID objectID, NFrame.NFGUID nItemID)
        {
            NFMsg.ReqPickDropItem xData = new NFMsg.ReqPickDropItem();
            xData.item_guid = NFNetController.NFToPB(nItemID);

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);


            SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_PICK_ITEM, mxBody);
        }
Example #41
0
        public void RequireCompeleteTask(NFrame.NFGUID objectID, string strTaskID)
        {
            NFMsg.ReqCompeleteTask xData = new NFMsg.ReqCompeleteTask();
            xData.task_id = UnicodeEncoding.Default.GetBytes(strTaskID);

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);


            SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_COMPELETE_TASK, mxBody);
        }
Example #42
0
        static void OnPropertydHandler(NFGUID self, string strProperty, NFIDataList.TData oldVar, NFIDataList.TData newVar)
		{
            Console.Write(self);
            Console.Write(" ");
            Console.Write(strProperty);
            Console.Write(" ");
            Console.Write(oldVar.IntVal());
            Console.Write(" ");
            Console.Write(oldVar.IntVal());
            Console.WriteLine(" ");
		}
    public void RequireCompeleteTask(NFrame.NFGUID objectID, string strTaskID)
    {
        NFMsg.ReqCompeleteTask xData = new NFMsg.ReqCompeleteTask();
        xData.task_id = UnicodeEncoding.Default.GetBytes(strTaskID);

        MemoryStream stream = new MemoryStream();

        Serializer.Serialize <NFMsg.ReqCompeleteTask>(stream, xData);

        SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_COMPELETE_TASK, stream);
    }
Example #44
0
        static void OnPropertydHandler(NFGUID self, string strProperty, NFIDataList.TData oldVar, NFIDataList.TData newVar)
		{
            Debug.Log(self);
            Debug.Log(" ");
            Debug.Log(strProperty);
            Debug.Log(" ");
            Debug.Log(oldVar.IntVal());
            Debug.Log(" ");
            Debug.Log(newVar.IntVal());
            Debug.Log(" ");
		}
Example #45
0
        public void RequireDelRole(NFrame.NFGUID objectID, string strAccount, string strRoleName, int nGameID)
        {
            NFMsg.ReqDeleteRole xData = new NFMsg.ReqDeleteRole();
            xData.name    = UnicodeEncoding.Default.GetBytes(strRoleName);
            xData.account = UnicodeEncoding.Default.GetBytes(strAccount);
            xData.game_id = nGameID;

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);

            SendMsg(objectID, NFMsg.EGameMsgID.EGMI_REQ_DELETE_ROLE, mxBody);
        }
Example #46
0
        //申请挖掉某个矿石
        public void RequireMineTile(NFrame.NFGUID objectID, int nX, int nY)
        {
            NFMsg.ReqMiningTitle xData = new NFMsg.ReqMiningTitle();
            xData.x   = nX;
            xData.y   = nY;
            xData.opr = 0;

            mxBody.SetLength(0);
            mxSerializer.Serialize(mxBody, xData);

            SendMsg(objectID, NFMsg.EGameMsgID.EGEC_REQ_MINING_TITLE, mxBody);
        }
Example #47
0
 public override void DoEvent(NFGUID self, int nEventID, NFIDataList valueList)
 {
     Dictionary<int, NFIEvent> xData = mhtEvent[self];
     if (null != xData)
     {
         if (xData.ContainsKey(nEventID))
         {
             NFIEvent identEvent = (NFIEvent)xData[nEventID];
             identEvent.DoEvent(valueList);
         }
     }
 }
Example #48
0
        static void OnRecordEventHandler(NFGUID self, string strRecordName, NFIRecord.eRecordOptype eType, int nRow, int nCol, NFIDataList.TData oldVar, NFIDataList.TData newVar)
		{
            Console.Write(self);
            Console.Write(" ");
            Console.Write(strRecordName);
            Console.Write(" ");
            Console.Write(eType.ToString());
            Console.Write(" ");
            Console.Write(nRow);
            Console.Write(" ");
            Console.Write(nCol);
            Console.Write(" ");
            Console.Write(oldVar.IntVal());
            Console.Write(" ");
            Console.Write(oldVar.IntVal());
            Console.WriteLine(" ");
		}
Example #49
0
        static void OnRecordEventHandler(NFGUID self, string strRecordName, NFIRecord.eRecordOptype eType, int nRow, int nCol, NFIDataList.TData oldVar, NFIDataList.TData newVar)
		{
            Debug.Log(self);
            Debug.Log(" ");
            Debug.Log(strRecordName);
            Debug.Log(" ");
            Debug.Log(eType.ToString());
            Debug.Log(" ");
            Debug.Log(nRow);
            Debug.Log(" ");
            Debug.Log(nCol);
            Debug.Log(" ");
            Debug.Log(oldVar.IntVal());
            Debug.Log(" ");
            Debug.Log(newVar.IntVal());
            Debug.Log(" ");
		}
Example #50
0
        public NFIActorMessage(NFIActorMessage x)
        {
            eType = x.eType;
            bAsync = x.bAsync;
            bReturn = x.bReturn;
            nSubMsgID = x.nSubMsgID;
            nFromActor = x.nFromActor;
            nMasterActor = x.nMasterActor;
            if (null != x.xMasterHandler)
            {
                xMasterHandler = new ConcurrentQueue<NFIActor.Handler>(x.xMasterHandler);
            }

            if (null != x.data)
            {
                data = (string)x.data.Clone();
            }
        }
Example #51
0
        public void OnPropertyHandler(NFGUID self, string strPropertyName, NFIDataList.TData oldVar, NFIDataList.TData newVar)
        {
            NFIObject xObject = NFCKernelModule.Instance.GetObject(self);
            NFIProperty xProperty = xObject.GetPropertyManager().GetProperty(strPropertyName);
            if (!xProperty.GetUpload())
            {
                return;
            }

            switch (oldVar.GetType())
            {
                case NFIDataList.VARIANT_TYPE.VTYPE_INT:
                    {
                        NFStart.Instance.GetFocusSender().RequirePropertyInt(self, strPropertyName, newVar);
                    }
                    break;
                case NFIDataList.VARIANT_TYPE.VTYPE_FLOAT:
                    {
                        NFStart.Instance.GetFocusSender().RequirePropertyFloat(self, strPropertyName, newVar);
                    }
                    break;
                case NFIDataList.VARIANT_TYPE.VTYPE_STRING:
                    {
                        NFStart.Instance.GetFocusSender().RequirePropertyString(self, strPropertyName, newVar);
                    }
                    break;
                case NFIDataList.VARIANT_TYPE.VTYPE_OBJECT:
                    {
                        NFStart.Instance.GetFocusSender().RequirePropertyObject(self, strPropertyName, newVar);
                    }
                    break;
                case NFIDataList.VARIANT_TYPE.VTYPE_VECTOR2:
                    {
                        NFStart.Instance.GetFocusSender().RequirePropertyVector2(self, strPropertyName, newVar);
                    }
                    break;
                case NFIDataList.VARIANT_TYPE.VTYPE_VECTOR3:
                    {
                        NFStart.Instance.GetFocusSender().RequirePropertyVector3(self, strPropertyName, newVar);
                    }
                    break;
            }

        }
Example #52
0
        public override void RegisterCallback(NFGUID self, int nEventID, NFIEvent.EventHandler handler, NFIDataList valueList)
        {
            Dictionary<int, NFIEvent> xData = mhtEvent[self];
            if (!mhtEvent.ContainsKey(self) || null == xData)
            {
                xData = new Dictionary<int, NFIEvent>();
                xData.Add(nEventID, new NFCEvent(self, nEventID, valueList));

                mhtEvent.Add(self, xData);
                return;
            }

            if (!xData.ContainsKey(nEventID))
            {
                xData.Add(nEventID, new NFCEvent(self, nEventID, valueList));
                return ;
            }

            NFIEvent identEvent = (NFIEvent)mhtEvent[self][nEventID];
            identEvent.RegisterCallback(handler);
        }
Example #53
0
        private void ADD_ROW(NFGUID self, string strRecordName, NFMsg.RecordAddRowStruct xAddStruct)
        {
            NFIObject go = NFCKernelModule.Instance.GetObject(self);
            NFIRecordManager xRecordManager = go.GetRecordManager();


            Hashtable recordVecDesc = new Hashtable();
            Hashtable recordVecData = new Hashtable();

            for (int k = 0; k < xAddStruct.record_int_list.Count; ++k)
            {
                NFMsg.RecordInt addIntStruct = (NFMsg.RecordInt)xAddStruct.record_int_list[k];

                if (addIntStruct.col >= 0)
                {
                    recordVecDesc[addIntStruct.col] = NFIDataList.VARIANT_TYPE.VTYPE_INT;
                    recordVecData[addIntStruct.col] = addIntStruct.data;
                }
            }

            for (int k = 0; k < xAddStruct.record_float_list.Count; ++k)
            {
                NFMsg.RecordFloat addFloatStruct = (NFMsg.RecordFloat)xAddStruct.record_float_list[k];

                if (addFloatStruct.col >= 0)
                {
                    recordVecDesc[addFloatStruct.col] = NFIDataList.VARIANT_TYPE.VTYPE_FLOAT;
                    recordVecData[addFloatStruct.col] = addFloatStruct.data;

                }
            }

            for (int k = 0; k < xAddStruct.record_string_list.Count; ++k)
            {
                NFMsg.RecordString addStringStruct = (NFMsg.RecordString)xAddStruct.record_string_list[k];

                if (addStringStruct.col >= 0)
                {
                    recordVecDesc[addStringStruct.col] = NFIDataList.VARIANT_TYPE.VTYPE_STRING;
                    recordVecData[addStringStruct.col] = System.Text.Encoding.Default.GetString(addStringStruct.data);

                }
            }

            for (int k = 0; k < xAddStruct.record_object_list.Count; ++k)
            {
                NFMsg.RecordObject addObjectStruct = (NFMsg.RecordObject)xAddStruct.record_object_list[k];

                if (addObjectStruct.col >= 0)
                {
                    recordVecDesc[addObjectStruct.col] = NFIDataList.VARIANT_TYPE.VTYPE_OBJECT;
                    recordVecData[addObjectStruct.col] = PBToNF(addObjectStruct.data);

                }
            }

            NFIDataList varListDesc = new NFCDataList();
            NFIDataList varListData = new NFCDataList();
            for (int m = 0; m < recordVecDesc.Count; m++)
            {
                if (recordVecDesc.ContainsKey(m) && recordVecData.ContainsKey(m))
                {
                    NFIDataList.VARIANT_TYPE nType = (NFIDataList.VARIANT_TYPE)recordVecDesc[m];
                    switch (nType)
                    {
                        case NFIDataList.VARIANT_TYPE.VTYPE_INT:
                            {
                                varListDesc.AddInt(0);
                                varListData.AddInt((Int64)recordVecData[m]);
                            }

                            break;
                        case NFIDataList.VARIANT_TYPE.VTYPE_FLOAT:
                            {
                                varListDesc.AddFloat(0.0f);
                                varListData.AddFloat((float)recordVecData[m]);
                            }
                            break;
                        case NFIDataList.VARIANT_TYPE.VTYPE_STRING:
                            {
                                varListDesc.AddString("");
                                varListData.AddString((string)recordVecData[m]);
                            }
                            break;
                        case NFIDataList.VARIANT_TYPE.VTYPE_OBJECT:
                            {
                                varListDesc.AddObject(new NFGUID());
                                varListData.AddObject((NFGUID)recordVecData[m]);
                            }
                            break;
                        default:
                            break;

                    }
                }
                else
                {
                    //报错
                    //Debug.LogException(i);
                }
            }

            NFIRecord xRecord = xRecordManager.GetRecord(strRecordName);
            if (null == xRecord)
            {
                xRecord = xRecordManager.AddRecord(strRecordName, 512, varListDesc);
            }

            xRecord.AddRow(xAddStruct.row, varListData);
        }
Example #54
0
 public abstract int FindObject(int nCol, NFGUID value, ref NFIDataList varResult);
Example #55
0
 public abstract bool SetObject(NFGUID value);
Example #56
0
 public NFCProperty(NFGUID self, string strPropertyName, NFIDataList.TData varData)
 {
     mSelf = self;
     msPropertyName = strPropertyName;
     mxData = new NFIDataList.TData(varData);
 }
Example #57
0
        public override bool SetObject(NFGUID value)
        {
            if (mxData.ObjectVal() != value)
            {
                NFIDataList.TData oldValue = new NFIDataList.TData(mxData);
                NFIDataList.TData newValue = new NFIDataList.TData(NFIDataList.VARIANT_TYPE.VTYPE_OBJECT);
                newValue.Set(value);

                mxData.Set(value);

                if (null != doHandleDel)
                {
                    doHandleDel(mSelf, msPropertyName, oldValue, newValue);
                }
            }

            return true;
        }
Example #58
0
        public override int FindObject(int nCol, NFGUID value, ref NFIDataList varResult)
        {
			foreach (int i in mhtRecordVec.Keys)
			{
				NFIDataList valueList = (NFIDataList)mhtRecordVec[i];
				if (valueList.ObjectVal(nCol) == value)
				{
                    varResult.AddInt(i);
                }
			}

            return varResult.Count();
        }
Example #59
0
        public override bool SetObject(int nRow, int nCol, NFGUID value)
        {
			if(nRow >= 0 && nRow < mnRow)
			{
				if (!mhtRecordVec.ContainsKey(nRow))
				{
					AddRow(nRow);
				}
				NFIDataList valueList = (NFIDataList)mhtRecordVec[nRow];
				if (valueList.GetType(nCol) == NFIDataList.VARIANT_TYPE.VTYPE_OBJECT)
				{
					if (valueList.ObjectVal(nCol) != value)
					{
                        NFIDataList.TData oldValue = new NFIDataList.TData(NFIDataList.VARIANT_TYPE.VTYPE_OBJECT);
                        NFIDataList.TData newValue = new NFIDataList.TData(NFIDataList.VARIANT_TYPE.VTYPE_OBJECT);

                        oldValue.Set(valueList.ObjectVal(nCol));
                        newValue.Set(value);

                        valueList.SetObject(nCol, value);

                        if (null != doHandleDel)
                        {
                            doHandleDel(mSelf, mstrRecordName, eRecordOptype.Update, nRow, nCol, oldValue, newValue);
                        }
                    }
				}

				return true;
			}

			return false;
        }
Example #60
0
 public virtual void SetSelf(NFGUID xID) { mxID = xID; }