Example #1
0
    static public DataFactory createFactory(Type classType, DATA_TYPE type)
    {
        object[]    param   = new object[] { type, classType };     //构造器参数
        DataFactory factory = UnityUtility.createInstance <DataFactory>(typeof(DataFactory), param);

        return(factory);
    }
Example #2
0
    //------------------------------------------------------------------------------------------------------------
    protected SocketPacket createPacket(Type classType, PACKET_TYPE packetType)
    {
        SocketPacket packet = UnityUtility.createInstance <SocketPacket>(classType, packetType);

        packet.init();
        return(packet);
    }
Example #3
0
    public static SceneProcedure createProcedure <T>(GameScene gameScene, PROCEDURE_TYPE type) where T : SceneProcedure, new()
    {
        object[] procedureParams = new object[] { type, gameScene };
        T        procedure       = UnityUtility.createInstance <T>(typeof(T), procedureParams);

        return(procedure);
    }
Example #4
0
    public virtual Data createData()
    {
        object[] param = new object[] { mType };          //构造器参数
        Data     data  = UnityUtility.createInstance <Data>(mClassType, param);

        return(data);
    }
Example #5
0
    public SocketPacket createPacket()
    {
        object[]     param = new object[] { mType };      //构造器参数
        SocketPacket pack  = UnityUtility.createInstance <SocketPacket>(mClassType, param);

        return(pack);
    }
Example #6
0
    protected void registeComponent <T>() where T : FrameComponent
    {
        string name      = typeof(T).ToString();
        T      component = UnityUtility.createInstance <T>(typeof(T), name);

        mFrameComponentMap.Add(name, component);
        mFrameComponentList.Add(component);
    }
Example #7
0
 public SocketPacket createPacket(Type type)
 {
     if (mClassTypeList.ContainsKey(type))
     {
         return(UnityUtility.createInstance <SocketPacket>(type, mClassTypeList[type].mType));
     }
     return(null);
 }
Example #8
0
 public SocketPacket createPacket(PACKET_TYPE type)
 {
     if (mPacketTypeList.ContainsKey(type))
     {
         return(UnityUtility.createInstance <SocketPacket>(mPacketTypeList[type].mClassType, type));
     }
     return(null);
 }
Example #9
0
 public SerialPortPacket createPacket(COM_PACKET type)
 {
     if (mComPacketRegisteList.ContainsKey(type))
     {
         return(UnityUtility.createInstance <SerialPortPacket>(mComPacketRegisteList[type], type));
     }
     return(null);
 }
Example #10
0
 public SocketPacket createPacket(SOCKET_PACKET type)
 {
     if (mSocketPacketTypeList.ContainsKey(type))
     {
         PacketInfo info = mSocketPacketTypeList[type];
         return(UnityUtility.createInstance <SocketPacket>(mSocketPacketTypeList[type].mClassType, info.mType, info.mDataCount));
     }
     return(null);
 }
Example #11
0
    protected PlayerState createState(PLAYER_STATE type)
    {
        if (!mStateTypeList.ContainsKey(type))
        {
            UnityUtility.logError("state not registed! type : " + type);
            return(null);
        }
        PlayerState state = UnityUtility.createInstance <PlayerState>(mStateTypeList[type], type);

        return(state);
    }
Example #12
0
    public static GameComponent createIndependentComponent(string name, Type type, bool initComponent = true)
    {
        GameComponent component = UnityUtility.createInstance <GameComponent>(type, type, name);

        // 创建组件并且设置拥有者,然后初始化
        if (initComponent && component != null)
        {
            component.init(null);
        }
        return(component);
    }
Example #13
0
    public static GameComponent createIndependentComponent(string name, Type type, bool initComponent = true)
    {
        object[]      constructParms = new object[] { type, name };     //构造器参数
        GameComponent component      = UnityUtility.createInstance <GameComponent>(type, constructParms);

        // 创建组件并且设置拥有者,然后初始化
        if (initComponent && component != null)
        {
            component.init(null);
        }
        return(component);
    }
Example #14
0
    //------------------------------------------------------------------------------------------------------------
    public void registerPacket <T>(PACKET_TYPE type) where T : SocketPacket
    {
        PacketInfo info = new PacketInfo();

        info.mClassType = typeof(T);
        info.mType      = type;
        SocketPacket packet = UnityUtility.createInstance <T>(typeof(T), type);

        info.mPacketSize = packet.getSize();
        mPacketTypeList.Add(type, info);
        mClassTypeList.Add(info.mClassType, info);
    }
Example #15
0
	// 注册时可以指定组件的初始化顺序,更新顺序,销毁顺序
	protected void registeFrameSystem(Type type, int initOrder = -1, int updateOrder = -1, int destroyOrder = -1)
	{
		string name = type.ToString();
		var component = UnityUtility.createInstance<FrameSystem>(type);
		component.setName(name);
		component.setInitOrder(initOrder == -1 ? mFrameComponentMap.Count : initOrder);
		component.setUpdateOrder(updateOrder == -1 ? mFrameComponentMap.Count : updateOrder);
		component.setDestroyOrder(destroyOrder == -1 ? mFrameComponentMap.Count : destroyOrder);
		mFrameComponentMap.Add(name, component);
		mFrameComponentInit.Add(component);
		mFrameComponentUpdate.Add(component);
		mFrameComponentDestroy.Add(component);
	}
Example #16
0
    // 注册时可以指定组件的初始化顺序,更新顺序,销毁顺序
    protected void registeComponent <T>(int initOrder = -1, int updateOrder = -1, int destroyOrder = -1) where T : FrameComponent
    {
        string name      = typeof(T).ToString();
        T      component = UnityUtility.createInstance <T>(typeof(T), name);

        component.mInitOrder    = initOrder == -1 ? mFrameComponentMap.Count : initOrder;
        component.mUpdateOrder  = updateOrder == -1 ? mFrameComponentMap.Count : updateOrder;
        component.mDestroyOrder = destroyOrder == -1 ? mFrameComponentMap.Count : destroyOrder;
        mFrameComponentMap.Add(name, component);
        mFrameComponentInit.Add(component);
        mFrameComponentUpdate.Add(component);
        mFrameComponentDestroy.Add(component);
    }
Example #17
0
    public static HttpPacket createPacket(string address)
    {
        HTTP_PACKET typePacket = HTTP_PACKET.HP_NONE;

        if (PacketAdressList.ContainsKey(address))
        {
            typePacket = PacketAdressList[address];
        }
        if (typePacket != HTTP_PACKET.HP_NONE)
        {
            Type       typeT     = Type.GetType(PacketTypeList[typePacket]);
            object[]   tParams   = new object[] { typePacket, address };
            HttpPacket newPacket = UnityUtility.createInstance <HttpPacket>(typeT, tParams);
            return(newPacket);
        }

        return(null);
    }
Example #18
0
    public Command newCmd(Type type, bool show = true, bool delay = false)
    {
        mNewCmdLock.waitForUnlock();
        // 首先从未使用的列表中获取,获取不到再重新创建一个
        Command cmd = null;

        if (mUnusedList.ContainsKey(type))
        {
            if (mUnusedList[type].Count > 0)
            {
                cmd = mUnusedList[type][0];
                // 从未使用列表中移除
                removeUnuse(cmd);
            }
        }
        // 没有找到可以用的,则创建一个
        if (cmd == null)
        {
            cmd = UnityUtility.createInstance <Command>(type);
            cmd.setID(mIDSeed++);
            cmd.init();
            cmd.setType(type);
            ++mNewCount;
        }
        // 设置为可用命令
        cmd.setValid(true);
        if (delay)
        {
            cmd.setAssignID(mAssignIDSeed++);
        }
        else
        {
            cmd.setAssignID(-1);
        }
        cmd.setShowDebugInfo(show);
        cmd.setDelayCommand(delay);
        // 加入已使用列表
        addInuse(cmd);
        mNewCmdLock.unlock();
        return(cmd);
    }
Example #19
0
    // 创建一个道具
    public SceneItemBase createItem(SCENE_ITEM type, ItemParamBase param)
    {
        if (!mItemRegisteList.ContainsKey(type))
        {
            return(null);
        }
        SceneItemBase item = UnityUtility.createInstance <SceneItemBase>(mItemRegisteList[type], type);

        item.init(param);
        if (mItemList.ContainsKey(type))
        {
            mItemList[type].Add(item);
        }
        else
        {
            List <SceneItemBase> itemList = new List <SceneItemBase>();
            itemList.Add(item);
            mItemList.Add(type, itemList);
        }
        return(item);
    }
Example #20
0
    //----------------------------------------------------------------------------------------------
    protected GameScene createScene(GAME_SCENE_TYPE type)
    {
        Type classType = mGameSceneRegisteList[type];

        return(UnityUtility.createInstance <GameScene>(classType, type, classType.ToString()));
    }
Example #21
0
 //------------------------------------------------------------------------------------------------------------
 protected SocketFactory createFactory(Type classType, PACKET_TYPE type)
 {
     return(UnityUtility.createInstance <SocketFactory>(typeof(SocketFactory), new object[] { classType, type }));
 }
Example #22
0
 public LayoutScript createScript(string name, GameLayout layout)
 {
     return(UnityUtility.createInstance <LayoutScript>(mScriptRegisteList[layout.getType()], name, layout));
 }
Example #23
0
 protected SceneInstance createScene(string sceneName)
 {
     return(UnityUtility.createInstance <SceneInstance>(mSceneRegisteList[sceneName], sceneName));
 }
Example #24
0
    public static SceneProcedure createProcedure <T>(GameScene gameScene, PROCEDURE_TYPE type) where T : SceneProcedure
    {
        T procedure = UnityUtility.createInstance <T>(typeof(T), type, gameScene);

        return(procedure);
    }
Example #25
0
 protected Character createCharacter(CHARACTER_TYPE type, string name)
 {
     return(UnityUtility.createInstance <Character>(mCharacterRegisteList[type], type, name));
 }
Example #26
0
 public Data createData(DATA_TYPE type)
 {
     return(UnityUtility.createInstance <Data>(mDataRegisteList[type], type));
 }
Example #27
0
 //------------------------------------------------------------------------------------------------------------
 protected ScriptFactory createFactory(Type classType, LAYOUT_TYPE type)
 {
     return(UnityUtility.createInstance <ScriptFactory>(typeof(ScriptFactory), new object[] { type, classType }));
 }
Example #28
0
 public virtual LayoutScript createScript(GameLayout layout, string name)
 {
     object[] param = new object[] { mType, name, layout };
     return(UnityUtility.createInstance <LayoutScript>(mClassType, param));
 }
Example #29
0
 //----------------------------------------------------------------------------------------------------------------
 protected PlayerItemBase createPlayerItem(PLAYER_ITEM type)
 {
     return(UnityUtility.createInstance <PlayerItemBase>(mRegisteList[type], type));
 }