public void processEvent(EventObjectEx eventObject) { int eventType = eventObject.EventType; int num = eventType; if (num != 27) { if (num != 30) { if (num == 33) { PreMonsterInjureEventObject obj = eventObject as PreMonsterInjureEventObject; if (obj != null && obj.SceneType == 41) { Monster injureMonster = obj.Monster; if (injureMonster != null) { if (this.IsQiZhiExtensionID(injureMonster.MonsterInfo.ExtensionID)) { this.RuntimeData.KarenBattleDamage.TryGetValue(injureMonster.MonsterInfo.ExtensionID, out obj.Injure); eventObject.Handled = true; eventObject.Result = true; } } } } } else { OnCreateMonsterEventObject e = eventObject as OnCreateMonsterEventObject; if (null != e) { KarenBattleQiZhiConfig_West qiZhiConfig = e.Monster.Tag as KarenBattleQiZhiConfig_West; if (null != qiZhiConfig) { e.Monster.Camp = qiZhiConfig.BattleWhichSide; e.Result = true; e.Handled = true; } } } } else { ProcessClickOnNpcEventObject e2 = eventObject as ProcessClickOnNpcEventObject; if (null != e2) { if (null != e2.Npc) { int npcId = e2.Npc.NpcID; } if (this.OnSpriteClickOnNpc(e2.Client, e2.NpcId, e2.ExtensionID)) { e2.Result = false; e2.Handled = true; } } } }
public void processEvent(EventObjectEx eventObject) { if (eventObject.EventType == 30) { OnCreateMonsterEventObject e = eventObject as OnCreateMonsterEventObject; if (null != e) { CreateMonsterTagInfo tagInfo = e.Monster.Tag as CreateMonsterTagInfo; if (null != tagInfo) { e.Monster.AllwaySearchEnemy = true; if (tagInfo.IsFort) { e.Monster.Camp = this._runtimeData.CampID; } e.Result = true; e.Handled = true; } } } if (eventObject.EventType == 33) { PreMonsterInjureEventObject obj = eventObject as PreMonsterInjureEventObject; if (obj != null && obj.SceneType == 34) { Monster attacker = obj.Attacker as Monster; Monster fortMonster = obj.Monster; if (attacker != null && fortMonster != null) { CreateMonsterTagInfo tagInfo = fortMonster.Tag as CreateMonsterTagInfo; if (tagInfo != null && tagInfo.IsFort) { int fubebSeqID = tagInfo.FuBenSeqId; if (fubebSeqID > 0) { CopyWolfSceneInfo scene = null; if (this._runtimeData.SceneDict.TryGetValue(fubebSeqID, out scene) && scene != null) { int injure = this._runtimeData.GetMonsterHurt(attacker.MonsterInfo.ExtensionID); int fortLife = (int)Math.Max(0.0, fortMonster.VLife - (double)injure); scene.ScoreData.FortLifeNow = fortLife; scene.ScoreData.FortLifeMax = (int)fortMonster.MonsterInfo.VLifeMax; GameManager.ClientMgr.BroadSpecialCopyMapMessage <CopyWolfScoreData>(1025, scene.ScoreData, scene.CopyMapInfo); obj.Injure = injure; eventObject.Handled = true; eventObject.Result = true; } } } } } } }
public void processEvent(EventObjectEx eventObject) { if (eventObject.EventType == (int)EventTypes.OnCreateMonster) { OnCreateMonsterEventObject e = eventObject as OnCreateMonsterEventObject; if (null != e) { CreateMonsterTagInfo tagInfo = e.Monster.Tag as CreateMonsterTagInfo; if (null != tagInfo) { e.Monster.AllwaySearchEnemy = true; if (tagInfo.IsFort) { e.Monster.Camp = _runtimeData.CampID; } e.Result = true; e.Handled = true; } } } if (eventObject.EventType == (int)EventTypes.PreMonsterInjure) { PreMonsterInjureEventObject obj = eventObject as PreMonsterInjureEventObject; if (obj != null && obj.SceneType == (int)SceneUIClasses.CopyWolf) { Monster attacker = obj.Attacker as Monster; Monster fortMonster = obj.Monster; if (attacker == null || fortMonster == null) { return; } CreateMonsterTagInfo tagInfo = fortMonster.Tag as CreateMonsterTagInfo; if (tagInfo != null) { int fubebSeqID = tagInfo.FuBenSeqId; //int.TryParse(fortMonster.Tag.ToString(), out fubebSeqID); if (fubebSeqID <= 0) { return; } CopyWolfSceneInfo scene = null; if (!_runtimeData.SceneDict.TryGetValue(fubebSeqID, out scene) || scene == null) { return; } //====Monsters=== //int injure = _runtimeData.GetMonsterHurt(attacker.MonsterInfo.ExtensionID); ////injure = 1; //int fortLife = (int)Math.Max(0, fortMonster.VLife - injure); //scene.ScoreData.FortLifeNow = fortLife; //scene.ScoreData.FortLifeMax = (int)fortMonster.MonsterInfo.VLifeMax; //GameManager.ClientMgr.BroadSpecialCopyMapMessage((int)TCPGameServerCmds.CMD_SPR_COPY_WOLF_SCORE_INFO, scene.ScoreData, scene.CopyMapInfo); // obj.Injure = injure; eventObject.Handled = true; eventObject.Result = true; } } } }