override public bool Init(ObjectInitParam param) { PlayerInitParam plyParam = (PlayerInitParam)param; if (!DataManager.PlayerTable.ContainsKey(plyParam.player_data.resId)) { return(false); } mRes = DataManager.PlayerTable[plyParam.player_data.resId] as PlayerTableItem; mModelResID = mRes.model; mUseWeaponID = plyParam.player_data.main_weaponId; if (!base.Init(param)) { return(false); } mLevel = plyParam.player_data.level; ApplyProperty(plyParam.init_property); mHeadNode = PlayerHeadUIManager.Instance.CreatePlayerHeadUI(); mHeadNode.SetName(GetName()); mHeadNode.SetTitle(GetTitleImg()); mHeadNode.Show(); SetLeague(LeagueDef.Red); return(true); }
override public bool Init(ObjectInitParam param) { PickInitParam pickParam = (PickInitParam)param; if (!DataManager.PickTable.ContainsKey(pickParam.pick_res_id)) { GameDebug.LogError("pick表中不存在ID: " + pickParam.pick_res_id); return(false); } mRes = DataManager.PickTable[pickParam.pick_res_id] as PickTableItem; mModelResID = mRes.modelId; mContent = pickParam.content; mPickType = pickParam.pick_type; mFlyType = pickParam.fly_type; mRandomPos = pickParam.random_pos; if (!base.Init(param)) { return(false); } InitProperty(); return(true); }
override public bool Init(ObjectInitParam param) { if (!base.Init(param)) { return(false); } mHomePosition.x = mPosition.x; mHomePosition.y = mPosition.y; mHomePosition.z = mPosition.z; mProperty = new RoleProperty(); mActionCenter = new BattleUnitActionCenter(this); mSkillContainer = new BattleUnitSkillContainer(); mSkillEffectManager = new SkillEffectManager(this); mActiveFlagsContainer = new ActiveFlagsContainer(); mRandEventContainer = new BattleUnitRandEventContainer(); mHitMaterialEffectCdContainer = new HitMaterialEffectCdContainer(); // 默认透明度为100. SetBaseProperty((int)PropertyTypeEnum.PropertyTypeAlpha, 100); // 默认硬直抗性为100. SetBaseProperty((int)PropertyTypeEnum.PropertyTypeSpasticityResistance, 100); SetBaseProperty((int)PropertyTypeEnum.PropertyTypeScale_Rate, 100); return(true); }
override public bool Init(ObjectInitParam param) { GhostInitParam ghostParam = (GhostInitParam)param; mGhostData = ghostParam.ghost_data; if (!DataManager.PlayerTable.ContainsKey(mGhostData.resId)) { return(false); } mRes = DataManager.PlayerTable[mGhostData.resId] as PlayerTableItem; mModelResID = mRes.model; mMainWeaponID = mGhostData.main_weaponId; mMainPlayer = ghostParam.main_player; if (!base.Init(param)) { return(false); } InitProperty(mGhostData); SetLeague(ghostParam.league); return(true); }
override public bool Init(ObjectInitParam param) { CropsInitParam cropsParam = (CropsInitParam)param; if (!DataManager.NPCTable.ContainsKey(cropsParam.crops_res_id)) { return(false); } mRes = DataManager.NPCTable[cropsParam.crops_res_id] as NPCTableItem; mModelResID = mRes.model; if (!base.Init(param)) { return(false); } resid = mRes.resID; mBattleUintAI = AIFactory.Instance.CreateAIObject(this, mRes.ai); if (mBattleUintAI == null) { return(false); } if (cropsParam.talk_id >= 0) { mTalkID = cropsParam.talk_id; } else { mTalkID = mRes.talkID; } if (cropsParam.league != LeagueDef.InvalidLeague) { SetLeague(cropsParam.league); } else { SetLeague(mRes.league); } mDestroyWaiting = true; mMaxDisappearTime = mRes.DisappearTime; mMaxWaitDisappearTime = mRes.WaitDisappearTime; mSummonerAttr = cropsParam.summonerAttr; InitProperty(cropsParam); if (mRes.bossHpUnit < 0 && mRes.showHp) { mBloodNode = BloodUIManager.Instance.CreateBloodUI(); } GetCrySound(); return(true); }
public override bool Init(ObjectInitParam param) { if (!base.Init(param)) { return(false); } mBulletParam = (BulletInitParam)param; if ((mBulletResource = DataManager.BulletTable[mBulletParam.resID] as BulletTableItem) == null) { SkillUtilities.ResourceNotFound("bullet", mBulletParam.resID); return(false); } mCreateDelay = mBulletParam.createDelay; mFirerAttr = mBulletParam.firerAttr; FlySpeed = mBulletResource.flySpeed; StartPosition = mBulletParam.startPosition; TargetPosition = mBulletParam.targetPosition; Vector3 dir3d = TargetPosition - StartPosition; dir3d.y = 0; if (dir3d == Vector3.zero) { // 起始点与终点位置重叠, 取开火者当前朝向. BattleUnit firer = mFirerAttr.CheckedAttackerObject(); float alternative = (firer != null) ? firer.GetDirection() : mFirerAttr.AttackerDirection; dir3d = Utility.RadianToVector3(alternative); } FlyDirection = Quaternion.LookRotation(dir3d); SetRotation(FlyDirection); AccelerateDelay = mBulletResource.accelerateDelay; mFlyTargetSelection = new TargetSelectionTableItem() { resID = -1, desc = "bullet hit", leagueSel = mBulletResource.leagueSelection, //maxTargetCount = mBulletResource.flyThroughCount - (uint)mHitted.Count, shape = ShapeType.ShapeType_Rect, RectLength = mBulletResource.radiusOnCollide * 2 }; SetPosition(StartPosition); return(true); }
override public bool Init(ObjectInitParam param) { if (!base.Init(param)) { return(false); } InitModelID = -1; mHasShadow = false; return(true); }
override public bool Init(ObjectInitParam param) { if (!base.Init(param)) { return(false); } //RoleInitParam roleParam = (RoleInitParam)param; mHasShadow = true; return(true); }
override public bool Init(ObjectInitParam param) { NpcInitParam npcParam = (NpcInitParam)param; if (!DataManager.NPCTable.ContainsKey(npcParam.npc_res_id)) { return(false); } mRes = DataManager.NPCTable[npcParam.npc_res_id] as NPCTableItem; mModelResID = mRes.model; if (!base.Init(param)) { return(false); } mBattleUintAI = AIFactory.Instance.CreateAIObject(this, mRes.ai); if (mBattleUintAI == null) { return(false); } if (npcParam.talk_id >= 0) { mTalkID = npcParam.talk_id; } else { mTalkID = mRes.talkID; } InitTalk(); SetLeague(mRes.league); mDestroyWaiting = true; mMaxDisappearTime = mRes.DisappearTime; mMaxWaitDisappearTime = mRes.WaitDisappearTime; mLifeTime = npcParam.lifeTime; mSummonerAttr = npcParam.summonerAttr; InitProperty(); if (mRes.bossHpUnit < 0 && mRes.showHp) { mBloodNode = BloodUIManager.Instance.CreateBloodUI(); } GetCrySound(); return(true); }
virtual public bool Init(ObjectInitParam param) { mInitPos = param.init_pos; mInitDir = param.init_dir; mAlias = param.alias; this.SetPosition(mInitPos); this.SetDirection(mInitDir); mShapeParam = param.init_shape; mDestoryed = false; mDisappear = false; return(true); }
public override bool Init(ObjectInitParam param) { if (!base.Init(param)) { return(false); } TrapInitParam trapInit = (TrapInitParam)param; if (!DataManager.TrapTable.ContainsKey(trapInit.trapResID)) { return(false); } mTrapResource = DataManager.TrapTable[trapInit.trapResID] as TrapTableItem; mModelResID = (int)mTrapResource.modelID; mSummonerAttr = trapInit.summonerAttr; // 没有召唤者. if (mSummonerAttr.AttackerID == uint.MaxValue) { mSummonerAttr = new AttackerAttr(this, mSummonerAttr.SkillCommonID, mSummonerAttr.StructMadeByRandEvent); } mTaskManager = new SkillUtilities.TaskManager(null); // 生命时间结束后, 进入倒计时死亡. mTaskManager.AddTask(new SkillUtilities.Task(trapInit.lifeTime, explodeCountBackwards, null)); // 倒计时死亡之后, 再经过爆炸延迟, 开始爆炸. uint explodeTime = uint.MaxValue; // 避免累加时溢出. if (trapInit.lifeTime != uint.MaxValue && mTrapResource.explodeDelay != uint.MaxValue) { explodeTime = trapInit.lifeTime + mTrapResource.explodeDelay; } mTaskManager.AddTask(new SkillUtilities.Task(explodeTime, explode, null)); mTaskManager.Start(); return(true); }
override public bool Init(ObjectInitParam param) { BuildInitParam buildParam = (BuildInitParam)param; if (!DataManager.BuildTable.ContainsKey(buildParam.build_res_id)) { return(false); } mRes = DataManager.BuildTable[buildParam.build_res_id] as BuildTableItem; if (mRes == null) { GameDebug.LogError("未找到buildobj id = " + buildParam.build_res_id.ToString()); return(false); } mModelResID = mRes.modelId; SetLeague(mRes.league); mDestroyWaiting = true; mMaxWaitDisappearTime = mRes.die_time; mMaxDisappearTime = 0.0f; mBarrier = buildParam.build_barrier; param.init_shape = new SceneShapeParam(); param.init_shape.mType = mRes.shapeType; param.init_shape.mParams.Add(mRes.shapeParam1); param.init_shape.mParams.Add(mRes.shapeParam2); if (!base.Init(param)) { return(false); } InitProperty(); return(true); }