本文整理匯總了Golang中MonsterQuest/gameObjectsBase.Itemer.EquipItem方法的典型用法代碼示例。如果您正苦於以下問題:Golang Itemer.EquipItem方法的具體用法?Golang Itemer.EquipItem怎麽用?Golang Itemer.EquipItem使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類MonsterQuest/gameObjectsBase.Itemer
的用法示例。
在下文中一共展示了Itemer.EquipItem方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: Equip
func (p *Player) Equip(item gameObjectsBase.Itemer, slotIota int) (int, consts.JsonType) {
var res consts.JsonType = nil
slot := p.slots[slotIota]
if slot == nil || !slot.isSuitableType(item.GetItemType()) {
return consts.BADSLOT, res
}
if item.GetItemClass() != consts.ITEM_CLASS_GARMENT || p.Equipped(item) {
return consts.BADID, res
}
p.Unequip(slotIota)
db := connect.CreateConnect()
_, err := db.Exec("CALL equip_item(?, ?, ?, ?)", p.DBId, item.GetKindId(), item.EquipItem(p.Inventory), slotIota)
if err == nil {
if ok, s := p.getNearbySlot(slotIota, item.GetItemSubtype()); ok {
if p.slots[s].item != nil && p.slots[s].item.GetID() != item.GetID() {
p.Unequip(s)
}
res = consts.JsonType{}
res[consts.SlotNameMapping[s]] = item.GetID()
p.slots[s].item = nil
} else {
p.Unequip(slotIota)
}
slot.item = item
}
if err == nil {
return consts.OK, res
} else {
return consts.BADID, res
}
}
示例2: RestoreSlot
func (p *Player) RestoreSlot(item gameObjectsBase.Itemer, slotIota int) {
p.Inventory.RestoreItem(item)
p.slots[slotIota].item = item
if ok, s := p.getNearbySlot(slotIota, item.GetItemSubtype()); ok {
if p.slots[s].item != nil {
p.slots[s].item = nil
}
// p.slots[s].item = item
}
item.EquipItem(p.Inventory)
item.SetOwner(p)
}