//初始化数据 private void Init(int nId, ItemBaseData Dbdata) { mDbData = Dbdata; SetId(nId); SetCount(1); CleanExdata(); var tbPet = Table.GetPet(nId); if (tbPet == null) { Logger.Error("PetId Id={0} not find", nId); return; } //初始等级 AddExdata(1); //初始经验 AddExdata(0); //初始星级 AddExdata(tbPet.Ladder); //初始状态 AddExdata((int)PetStateType.Idle); //碎片数量 AddExdata(0); //特长 for (var i = 0; i != 3; i++) { AddExdata(-1); } //随机特长 RefreshSpeciality(this, tbPet); }
public void PickUpItem(ItemBaseData item) { if (!HaveItem) { HaveItem = item; } }
//发放每日奖励 public void SendReward() { var item = new ItemBaseData(); item.ItemId = -1; var args = new StringArray(); foreach (var server in ServerAllianceManager.Servers.Values) { foreach (var data in server.mDBData.Values) { var alliance = ServerAllianceManager.GetAllianceById(data.Occupant); if (alliance == null) { continue; } var serverAlliance = alliance.Dad; foreach (var id in alliance.mDBData.Members) { var member = serverAlliance.GetCharacterData(id); if (member == null) { continue; } var tbGA = Table.GetGuildAccess(member.Ladder); if (tbGA == null) { Logger.Error("In SendReward().tbGA == null"); continue; } SendMailToCharacter(id, tbGA.MailId, item, args); } } } }
//初始化数据 private void Init(int nId, ItemBaseData Dbdata) { mDbData = Dbdata; SetId(nId); SetCount(1); CleanExdata(); var tbWing = Table.GetWingQuality(nId); if (tbWing == null) { Logger.Error("WingQualityId Id={0} not find", nId); return; } //初始翅膀祝福值 AddExdata((int)eWingExDefine.eGrowValue); //培养数据 for (var i = 0; i != 5; i++) { AddExdata(1 + i * 10000); AddExdata(0); } AddExdata(1); //11 装备模型显隐(1:显示 0:隐藏) // 保留 for (var i = 0; i < 4; ++i) { AddExdata(0); } }
private void Populate() { for (int i = 0; i < 1000; i++) { ItemBaseData item = null; if (ItemDatabase.GetItem(i, out item)) { GameObject go = Instantiate(prefab); ItemContainerPanel panel = go.GetComponent <ItemContainerPanel> (); panel.SetInventoryIndex(i); panel.SetContent(item.Sprite, item.ID, 1000); go.transform.SetParent(contentPanel); int shiftClick = 1000; panel.PanelButton.onClick.AddListener(() => { if (Input.GetKey(KeyCode.LeftShift)) { EntityManager.instance.PlayerInventory.AddItem(item.ID, shiftClick); } else { EntityManager.instance.PlayerInventory.AddItem(item.ID, 1); } }); } } }
//初始化数据 private void Init(int nId, ItemBaseData Dbdata) { mDbData = Dbdata; SetId(nId); SetCount(1); CleanExdata(); var tbItem = Table.GetItemBase(nId); var tbSU = Table.GetSkillUpgrading(tbItem.Exdata[0]); var values = tbSU.Values; if (values.Count % 3 != 0) { Logger.Error("tbSU.Values.Count can't be divided by 3!!"); return; } var count = values.Count / 3; var idx = MyRandom.Random(count) * 3; var sceneId = values[idx++]; var x = values[idx++]; var y = values[idx++]; //初始exdata AddExdata(sceneId); AddExdata(x); AddExdata(y); }
private void OnRankRefreshModelView(IEvent ievent) { var e = ievent as RankRefreshModelView; var info = e.Info; ModelRoot.DestroyFakeCharacter(); ItemBaseData elfData = null; var elfId = -1; if (info.Equips.ItemsChange.TryGetValue((int)eBagType.Elf, out elfData)) { elfId = elfData.ItemId; } if (AnimModelRoot) { AnimModelRoot.DestroyModel(); } if (e.Iselfrank) { var tbElf = Table.GetElf(elfId); if (tbElf == null) { return; } var dataId = tbElf.ElfModel; if (dataId == -1) { return; } var tableNpc = Table.GetCharacterBase(dataId); if (null == tableNpc) { Logger.Error("In CreateFormationElfModel(), null == tableNpc!!!!!!!"); return; } var offset = tableNpc.CameraHeight / 10000.0f; var colorId = -1; if (elfData.Exdata.Count > (int)ElfExdataDefine.StarLevel) { colorId = GameUtils.GetElfStarColorId(tbElf.ElfModel, elfData.Exdata[(int)ElfExdataDefine.StarLevel]); } ModelRoot.CreateWithColor(dataId, colorId, null, character => { character.SetScale(tableNpc.CameraMult / 10000.0f); character.ObjTransform.localPosition = new Vector3(0, offset - 0.48f, 0); }); } else if (e.IsMountRank) { CreateMountModel(info.MountId); } else { ModelRoot.Create(info.TypeId, info.EquipsModel, character => { ModelDrag.Target = character.transform; }, elfId, true); } }
public void PutBackItem() { if (HaveItem) { inventory.AddItem(HaveItem); HaveItem = null; } }
public void SetItem(ItemBaseData item) { Item = item; if (Item) { itemImage.sprite = item.ItemImage; } }
//添加广播道具 public static long PushItem(ulong characterId, string characterName, ItemBaseData itemBaseData, int needCount, int continueMinutes) { return(mImpl.PushItem(characterId, characterName, itemBaseData, needCount, continueMinutes)); }
public void ResetData(ExchangeItem _this, long guid, ItemBaseData itemBase, int needCount) { _this.mDbdata.Id = guid; _this.mDbdata.ItemData = itemBase; _this.mDbdata.StartTime = DateTime.Now.ToBinary(); _this.mDbdata.NeedCount = needCount; _this.State = StoreItemType.Normal; }
public WingItem(ItemBaseData Dbdata, bool IsNull = true) { mDbData = Dbdata; if (IsNull) { SetId(-1); SetCount(0); } }
public ItemBase(ItemBaseData Dbdata, bool IsNull = true) { mDbData = Dbdata; if (IsNull) { mDbData.ItemId = -1; mDbData.Count = 0; } }
public void AddItem(ItemBaseData item) { ItemSlot slot = ItemSlots.Where(i => i.Item == null).FirstOrDefault(); if (slot) { slot.SetItem(item); } }
public TreasureMap(ItemBaseData Dbdata, bool IsNull = true) { mDbData = Dbdata; if (IsNull) { SetId(-1); SetCount(0); } }
private IEnumerator SendMailToCharacterCoroutine(Coroutine co, ulong characterId, int mailId, ItemBaseData item, StringArray args) { var msg = TeamServer.Instance.LogicAgent.SendMailToCharacterByItems(characterId, mailId, item, args); yield return(msg.SendAndWaitUntilDone(co)); }
//通知玩家被谁杀死 public void PushMail(MailManager _this, int tableId, int ExtendType, string ExtendPara0, string ExtendPara1) { var tbMail = Table.GetMail(tableId); if (tbMail == null) { Logger.Fatal("null==Table.GetMail({0})", tableId); return; } // if (tbMail.Flag < 0) // { // PlayerLog.WriteLog((int)LogType.MailConfigError, "PushMail tbMail[{0}] Flag is -1", tbMail.Id); // return; // } // if (_this.mCharacter.GetFlag(tbMail.Flag)) // { // return; // } if (_this.mCharacter.CheckCondition(tbMail.Condition) != -2) { return; } var nextId = _this.GetNextId(); var tempmail = new Mail(_this.mCharacter, nextId); tempmail.Name = tbMail.Title; tempmail.Text = tbMail.Text; tempmail.Send = tbMail.Sender; tempmail.ExtendType = ExtendType; tempmail.ExtendPara0 = ExtendPara0; tempmail.ExtendPara1 = ExtendPara1; for (var i = 0; i != 5; ++i) { if (tbMail.ItemId[i] < 0) { continue; } if (tbMail.ItemCount[i] < 1) { continue; } var itemDb = new ItemBaseData(); ShareItemFactory.Create(tbMail.ItemId[i], itemDb); itemDb.Count = tbMail.ItemCount[i]; tempmail.Reward.Add(itemDb); //tempmail.Reward.Add(tbMail.ItemId[i],tbMail.ItemCount[i]); } tempmail.OverTime = DateTime.Now.AddDays(15).ToBinary(); _this.Mails.Add(tempmail.Guid, tempmail); _this.AddChild(tempmail); _this.mDbData.mData.Add(tempmail.mDbData); tempmail.MarkDirty(); // _this.mCharacter.SetFlag(tbMail.Flag); }
//初始化数据 private void Init(int nId, ItemBaseData Dbdata) { mDbData = Dbdata; SetId(nId); SetCount(1); CleanExdata(); //初始等级 AddExdata(1); //初始经验 AddExdata(0); }
public void RecycleItem() { if (HaveItem) { if (!recycleMachine) { recycleMachine = GameObject.Find("再生機").GetComponent <RecycleMachine>(); } recycleMachine.DropMaterial(HaveItem.HaveMaterials); HaveItem = null; } }
//初始化(用某块DB初始一个空的类型) public static ItemBase CreateByDb(ItemBaseData Dbdata) { //if (Table.GetItemBase(Dbdata.ItemId) == null) //{ // return null; //} var it = CheckGeneral.GetItemType(Dbdata.ItemId); switch (it) { case eItemType.Error: return(new ItemBase(Dbdata, false)); case eItemType.Resources: return(null); case eItemType.Equip: return(new ItemEquip2(Dbdata, false)); case eItemType.BaseItem: return(new ItemBase(Dbdata, false)); case eItemType.Piece: return(new ItemBase(Dbdata, false)); case eItemType.Mission: return(new ItemBase(Dbdata, false)); case eItemType.Elf: //精灵 return(new ElfItem(Dbdata, false)); case eItemType.Pet: //宠物 return(new PetItem(Dbdata, false)); case eItemType.Wing: //翅膀 return(new WingItem(Dbdata, false)); case eItemType.Astrology: //占星宝石 return(new Astrology(Dbdata, false)); case eItemType.Medal: //勋章 return(new MedalItem(Dbdata, false)); case eItemType.TreasureMap: //藏宝图 return(new TreasureMap(Dbdata, false)); default: return(new ItemBase(Dbdata, false)); } }
//初始化(按初始配置) /// <summary> /// 创造物品 /// </summary> /// <param name="nId">物品Id</param> /// <returns></returns> public static ItemBase Create(int nId, ItemBaseData Dbdata, int Count = 1) { if (Table.GetItemBase(nId) == null) { return(null); } var it = CheckGeneral.GetItemType(nId); switch (it) { case eItemType.Error: return(null); case eItemType.Resources: return(new ItemBase(nId, Dbdata)); case eItemType.Equip: return(new ItemEquip2(nId, Dbdata)); case eItemType.BaseItem: return(new ItemBase(nId, Dbdata, Count)); case eItemType.Piece: return(new ItemBase(nId, Dbdata)); case eItemType.Mission: return(new ItemBase(nId, Dbdata)); case eItemType.Elf: //精灵 return(new ElfItem(nId, Dbdata)); case eItemType.Pet: //宠物 return(new PetItem(nId, Dbdata)); case eItemType.Wing: //翅膀 return(new WingItem(nId, Dbdata)); case eItemType.Astrology: //占星宝石 return(new Astrology(nId, Dbdata)); case eItemType.Medal: //勋章 return(new MedalItem(nId, Dbdata)); case eItemType.TreasureMap: //藏宝图 return(new TreasureMap(nId, Dbdata)); default: return(null); } }
private static int GetGrowAttrId(ItemBaseData dbData, int index) { if (index < (int)eWingExDefine.eGrowProperty) { return(-1); } var attrId = -1; if (index < dbData.Exdata.Count) { attrId = dbData.Exdata[index]; } return(attrId); }
private void OnRefreshRankModelView(IEvent ievent) { var e = ievent as BattleUnionRefreshModelViewLogic; var info = e.Info; //ModelRoot.DestroyFakeCharacter(); ItemBaseData elfData = null; var elfId = -1; if (info.Equips.ItemsChange.TryGetValue((int)eBagType.Elf, out elfData)) { elfId = elfData.ItemId; } //ModelRoot.Create(info.TypeId, info.EquipsModel, character => { ModelDrag.Target = character.transform; }, elfId, // true); }
public ElfItem(ItemBaseData Dbdata, bool IsNull = true) { mDbData = Dbdata; if (IsNull) { SetId(-1); SetCount(0); } else { for (var i = mDbData.Exdata.Count; i < (int)ElfExdataDefine.Count; ++i) { AddExdata(-1); } } }
//添加广播道具 public long PushItem(ulong characterId, string characterName, ItemBaseData itemBaseData, int needCount, int ContinueMinutes) { var temp = new DBExchangeOne(); temp.Id = GetNextId(); temp.SellCharacterName = characterName; temp.SellCharacterId = characterId; temp.NeedCount = needCount; temp.ItemData = itemBaseData; temp.OverTime = DateTime.Now.AddMinutes(ContinueMinutes).ToBinary(); ExchangeManager.mDbData.StoreItems.Add(temp.Id, temp); AddItem(temp); //tbItem. return(temp.Id); }
private void CreateButtons() { List <ItemBaseData> items = new List <ItemBaseData> (); for (int i = 0; i < 1000; i++) { ItemBaseData item = null; if (ItemDatabase.GetItem(i, out item)) { if (itemsToIgnore.Contains(i)) { continue; } items.Add(item); } } items = items.OrderBy(x => x.Name).ToList(); for (int i = 0; i < items.Count; i++) { ItemBaseData item = items[i]; int itemID = item.ID; GameObject newButton = Instantiate(itemButtonGameObject); newButton.transform.SetParent(buttonsParent); newButton.GetComponentInChildren <TextMeshProUGUI> ().text = item.Name; newButton.GetComponentInChildren <TextMeshProUGUI> ().transform.GetChild(0).GetComponent <Image> ().sprite = item.Sprite; newButton.GetComponentInChildren <Button> ().onClick.AddListener(() => { OpenInformationPanel(itemID); }); ItemInformation itemInformation = new ItemInformation(itemID, npcs, craftingTables, shopkeepers); dictionary.Add(itemID, itemInformation); } itemButtonGameObject.SetActive(false); }
private IEnumerator PassIn(Coroutine co, GroupShopOne _this) { var args = new StringArray(); var item = new ItemBaseData(); item.ItemId = (int)eResourcesType.DiamondRes; var tbItem = Table.GetItemBase(_this.mDbData.ItemData.ItemId); if (tbItem != null) { args.Items.Add(tbItem.Name); } foreach (var v in _this.CharactersCount) { item.Count = v.Value; var msg = TeamServer.Instance.LogicAgent.SendMailToCharacterByItems(v.Key, 5, item, args); msg.SendAndWaitUntilDone(co); } Reset(_this); yield break; }
//初始化数据 private void Init(int nId, ItemBaseData Dbdata) { mDbData = Dbdata; SetId(nId); SetCount(1); CleanExdata(); //初始等级 AddExdata(1); //初始经验 AddExdata(0); var tbMedal = Table.GetMedal(nId); if (tbMedal != null) { var exp = Table.GetSkillUpgrading(tbMedal.LevelUpExp).GetSkillUpgradingValue(1); AddExdata(exp); } else { AddExdata(0); } }
void IEndDragHandler.OnEndDrag(PointerEventData eventData) { if (dragItem) { Destroy(dragItem); } if (IinventoryManager.Instance.GetRecycle(eventData)) { Item = null; IinventoryManager.Instance.RecycleItem(); } else if (IinventoryManager.Instance.GetRecycleO(eventData)) { if (Player.Instance.obstacle) { Player.Instance.obstacle.BreakObstacle(Item.type); } Item = null; IinventoryManager.Instance.PutBackItem(); } else if (IinventoryManager.Instance.GetRecycleT(eventData)) { if (Player.Instance.timeMachine) { if (Item.type == CommandType.GetTimeParts) { Player.Instance.timeMachine.Message(); } } Item = null; IinventoryManager.Instance.PutBackItem(); } else { Item = null; IinventoryManager.Instance.PutBackItem(); } }
//物品封装 public static string ItemWrap(ItemBaseData item) { var data = new ChatInfoNodeData(); data.Type = (int)eChatLinkType.Equip; data.Id = item.ItemId; var nowItemExdataCount0 = item.Exdata.Count; for (var i = 0; i < nowItemExdataCount0; i++) { data.ExData.Add(item.Exdata[i]); } var str = ""; using (var ms = new MemoryStream()) { Serializer.Serialize(ms, data); var wrap = LZ4Codec.Encode(ms.GetBuffer(), 0, (int)ms.Length); str = Convert.ToBase64String(wrap); } str = SpecialCode.ChatBegin + str + SpecialCode.ChatEnd; return(str); }