void Start() { instance = this; AttackEnemyCards_Listenner atkEnemyCardsListener = new AttackEnemyCards_Listenner(); CardOfKickTheDoorAtPresent_Listenner cardOfKickTheDoorAtPresentListener = new CardOfKickTheDoorAtPresent_Listenner(); CardOfTheMonsterAtPresent_Listenner cardOfTheMonsterAtPresentListener = new CardOfTheMonsterAtPresent_Listenner(); CardOfThePlayAtPresent_Listenner cardOfThePlayAtPresent_Listener = new CardOfThePlayAtPresent_Listenner(); MomentTypeAtPresent_Listenner momentTypeAtPresent_Listener = new MomentTypeAtPresent_Listenner(); CoreDataObserver.GetInstance().AddListenner(momentTypeAtPresent_Listener); PlayerDefine player = new PlayerDefine(1, "小磊君"); CoreDataObserver.GetInstance().SetPlayer(player);//初始化玩家; EventTable.GetInstance().RegisterEventType("GetACardOfKickTheDoor", EventType.GetACardOfKickTheDoor); EventTable.GetInstance().RegisterEventType("PushAttackEnemyCards", EventType.PushAttackEnemyCards); EventTable.GetInstance().RegisterEventType("Magic_CreatEvent", EventType.Magic_CreatEvent); EventTable.GetInstance().RegisterEventType("Debuff_CreatEventOne", EventType.Debuff_CreatEventOne); EventTable.GetInstance().RegisterEventType("GetMonsterCardAndPushItToList", EventType.GetMonsterCardAndPushItToList); EventTable.GetInstance().RegisterEventType("SetACardOfKickTheDoor", EventType.SetACardOfKickTheDoor); EventTable.GetInstance().RegisterEventType("ChangeMomentType_CombatPhase", EventType.ChangeMomentType_CombatPhase); ////--------------------------------------------------------------------------------------------------------- ////Test: EventTable.GetInstance().RegisterEventType("TestOneEvent", EventType.TestOneEvent); EventTable.GetInstance().RegisterEventType("TestTwoEvent", EventType.TestTwoEvent); EventTable.GetInstance().RegisterEventType("TestThreeEvent", EventType.TestThreeEvent); Run(); }
//---------------------------------------------------------------- public static EventTable GetInstance() { //获取当前对象的实例; if (instance == null) { lock (_lock) { if (instance == null) { instance = new EventTable(); } } } return(instance); }
//---------------------------------------------------------------- public Base_Event GetEvent(string fp_string) { switch (EventTable.GetInstance().GetEventType(fp_string)) { case EventType.None: //---------------------------------------------------- //base_event=new ****** //---------------------------------------------------- break; case EventType.Debuff_CreatEventOne: //---------------------------------------------------- base_event = new Debuff_CreatEventOne(); //---------------------------------------------------- break; case EventType.GetACardOfKickTheDoor: //---------------------------------------------------- base_event = new GetACardOfKickTheDoor(); //---------------------------------------------------- break; case EventType.Magic_CreatEvent: //---------------------------------------------------- base_event = new Magic_CreatEvent(); //---------------------------------------------------- break; case EventType.PushAttackEnemyCards: //----------------------------------------------------- base_event = new PushAttackEnemyCards(); break; //------------------------------------------------------ case EventType.GetMonsterCardAndPushItToList: base_event = new GetMonsterCardAndPushItToList(); break; //------------------------------------------------------ case EventType.SetACardOfKickTheDoor: base_event = new SetACardOfKickTheDoor(); break; //------------------------------------------------------ case EventType.ChangeMomentType_CombatPhase: base_event = new ChangeMomentType_CombatPhase(); break; //------------------------------------------------------ case EventType.TestOneEvent: base_event = new TestOneEvent(); break; //------------------------------------------------------ case EventType.TestTwoEvent: base_event = new TestOneEvent(); break; //------------------------------------------------------ case EventType.TestThreeEvent: base_event = new TestOneEvent(); break; default: break; } //---------------------------------------------------- if (base_event != null) { return(base_event); } else { return(null); } //---------------------------------------------------- }