/// <summary> /// 初始化 /// </summary> /// <param name="_this"></param> /// <param name="npcId"></param> /// <param name="logic"></param> /// <param name="scene"></param> public void Init(AutoPlayer _this, ulong npcId, LogicSimpleData logic, SceneSimpleData scene) { _this.mLogicData = logic; _this.mSceneData = scene; _this.mObjId = npcId; _this.mTypeId = logic.TypeId; _this.mDirection = new Vector2(1, 0); _this.mName = _this.mSceneData.Name; _this.BuffList = new BuffList(); _this.BuffList.InitByBase(_this); _this.Attr = new FightAttr(_this); _this.Skill = new SkillManager(_this); _this.SetLevel(_this.mLogicData.Level); _this.InitTableData(_this.mLogicData.Level); _this.InitEquip(_this.mLogicData.Level); _this.InitSkill(_this.mLogicData.Level); _this.InitBuff(_this.mLogicData.Level); _this.Attr.RobotPlayer = true; _this.InitAttr(_this.mLogicData.Level); _this.mCamp = 2; _this.TableCamp = Table.GetCamp(_this.mCamp); _this.InitAI(_this.mLogicData.Level); }
public void InitByRobot(AutoPlayer _this, ulong npcId, int RobotId) { _this.mObjId = npcId; _this.mLogicData = new LogicSimpleData(); _this.mLogicData.Id = (ulong)RobotId; //mSceneData = scene; var tbRobot = Table.GetJJCRoot(RobotId); _this.mTypeId = tbRobot.Career; //mTypeId = logic.TypeId; _this.mDirection = new Vector2(1, 0); _this.mName = tbRobot.Name; _this.BuffList = new BuffList(); _this.BuffList.InitByBase(_this); _this.Attr = new FightAttr(_this); _this.Skill = new SkillManager(_this); _this.SetLevel(tbRobot.Level); var lastLadder = 0; Table.ForeachTransmigration(record => { if (record.TransLevel <= tbRobot.Level) { if (record.PropPoint < lastLadder) { return(false); } lastLadder = record.PropPoint; } else { return(false); } return(true); }); _this.Attr.Ladder = lastLadder; _this.mLogicData.Ladder = lastLadder; _this.InitTableData(tbRobot.Level); //InitEquip(); if (tbRobot.EquipHand != -1) { var bagId = 17; var dbitem = new ItemBaseData(); var item = new ItemEquip2(tbRobot.EquipHand, dbitem); item.SetExdata(0, tbRobot.EquipLevel); _this.Equip.Add(bagId * 10, item); _this.mLogicData.EquipsModel.Add(bagId, tbRobot.EquipHand * 100 + tbRobot.EquipLevel); } if (tbRobot.EquipHead != -1) { var bagId = 7; var dbitem = new ItemBaseData(); var item = new ItemEquip2(tbRobot.EquipHead, dbitem); item.SetExdata(0, tbRobot.EquipLevel); _this.Equip.Add(bagId * 10, item); _this.mLogicData.EquipsModel.Add(bagId, tbRobot.EquipHead * 100 + tbRobot.EquipLevel); } if (tbRobot.EquipChest != -1) { var bagId = 11; var dbitem = new ItemBaseData(); var item = new ItemEquip2(tbRobot.EquipChest, dbitem); item.SetExdata(0, tbRobot.EquipLevel); _this.Equip.Add(bagId * 10, item); _this.mLogicData.EquipsModel.Add(bagId, tbRobot.EquipChest * 100 + tbRobot.EquipLevel); } if (tbRobot.EquipGlove != -1) { var bagId = 14; var dbitem = new ItemBaseData(); var item = new ItemEquip2(tbRobot.EquipGlove, dbitem); item.SetExdata(0, tbRobot.EquipLevel); _this.Equip.Add(bagId * 10, item); _this.mLogicData.EquipsModel.Add(bagId, tbRobot.EquipGlove * 100 + tbRobot.EquipLevel); } if (tbRobot.EquipTrouser != -1) { var bagId = 15; var dbitem = new ItemBaseData(); var item = new ItemEquip2(tbRobot.EquipTrouser, dbitem); item.SetExdata(0, tbRobot.EquipLevel); _this.Equip.Add(bagId * 10, item); _this.mLogicData.EquipsModel.Add(bagId, tbRobot.EquipTrouser * 100 + tbRobot.EquipLevel); } if (tbRobot.EquipShoes != -1) { var bagId = 16; var dbitem = new ItemBaseData(); var item = new ItemEquip2(tbRobot.EquipShoes, dbitem); item.SetExdata(0, tbRobot.EquipLevel); _this.Equip.Add(bagId * 10, item); _this.mLogicData.EquipsModel.Add(bagId, tbRobot.EquipShoes * 100 + tbRobot.EquipLevel); } if (tbRobot.WingID != -1) { var bagId = 12; var dbitem = new ItemBaseData(); var item = new WingItem(tbRobot.WingID, dbitem); var ib = new ItemEquip2(); ib.SetId(dbitem.ItemId); ib.SetCount(dbitem.Count); ib.CopyFrom(dbitem.Exdata); _this.Equip.Add(bagId * 10, ib); _this.mLogicData.EquipsModel.Add(bagId, tbRobot.WingID * 100 + tbRobot.EquipLevel); } _this.Attr.EquipRefresh(); //InitSkill(); _this.NormalSkillId = _this.TableCharacter.InitSkill[0]; _this.Skill.AddSkill(_this.TableCharacter.InitSkill[0], 1, eAddskillType.InitByRobot); foreach (var skill in tbRobot.Skill) { _this.Skill.AddSkill(skill, 1, eAddskillType.InitByRobot2); } //InitBuff(); //InitAttr(); _this.Attr.mBookData[1] = tbRobot.Power; _this.Attr.mBookData[2] = tbRobot.Agility; _this.Attr.mBookData[3] = tbRobot.Intelligence; _this.Attr.mBookData[4] = tbRobot.physical; _this.Attr.mBookData[(int)eAttributeType.PhyPowerMin] = tbRobot.AttackMin; _this.Attr.mBookData[(int)eAttributeType.PhyPowerMax] = tbRobot.AttackMax; _this.Attr.mBookData[(int)eAttributeType.MagPowerMin] = tbRobot.AttackMin; _this.Attr.mBookData[(int)eAttributeType.MagPowerMax] = tbRobot.AttackMax; _this.Attr.mBookData[(int)eAttributeType.PhyArmor] = tbRobot.PhysicsDefense; _this.Attr.mBookData[(int)eAttributeType.MagArmor] = tbRobot.MagicDefense; _this.Attr.mBookData[(int)eAttributeType.MpMax] = tbRobot.MagicLimit; _this.Attr.mBookData[(int)eAttributeType.HpMax] = tbRobot.LifeLimit; _this.Attr.InitAttributesAll(); //阵营 _this.mCamp = 2; _this.TableCamp = Table.GetCamp(_this.mCamp); _this.InitAI(tbRobot.Level); }