Example #1
0
	def equipItemRequest( self, itemIndex, equipIndex):
		if self.inventory.equipItem(itemIndex, equipIndex) == -1:
			self.client.errorInfo(4)
		else:
			#传回去装备和物品信息
			itemUUId = self.inventory.getItemUidByIndex(itemIndex)
			equipUUId = self.inventory.getEquipUidByIndex(equipIndex)
			itemInfo = TItemInfo()
			itemInfo.extend([0, 0, 0, itemIndex])
			equipItemInfo = TItemInfo()
			equipItemInfo.extend([0, 0, 0, equipIndex])
			if itemUUId != 0:
				itemInfo = self.itemList[itemUUId]
			if equipUUId != 0:
				equipItemInfo = self.equipItemList[equipUUId]
			self.client.equipItemRequest_re(itemInfo,equipItemInfo)
			#--------------------
			avatarCell = self.cell
			avatarCell.resetPropertys()
			for key, info in self.equipItemList.items():
				items.getItem(info[1]).use(self)

			if equipIndex == 0:
				uid = self.inventory.getEquipUidByIndex(equipIndex)
				if uid == 0:
					avatarCell.equipNotify(-1)
				else:
					avatarCell.equipNotify(self.equipItemList[uid][1])
Example #2
0
    def equipItemRequest(self, itemIndex, equipIndex):
        if self.inventory.equipItem(itemIndex, equipIndex) == -1:
            self.client.errorInfo(4)
        else:
            #传回去装备和物品信息
            itemUUId = self.inventory.getItemUidByIndex(itemIndex)
            equipUUId = self.inventory.getEquipUidByIndex(equipIndex)
            itemInfo = TItemInfo()
            itemInfo.extend([0, 0, 0, itemIndex])
            equipItemInfo = TItemInfo()
            equipItemInfo.extend([0, 0, 0, equipIndex])
            if itemUUId != 0:
                itemInfo = self.itemList[itemUUId]
            if equipUUId != 0:
                equipItemInfo = self.equipItemList[equipUUId]
            self.client.equipItemRequest_re(itemInfo, equipItemInfo)
            #--------------------
            avatarCell = self.cell
            avatarCell.resetPropertys()
            for key, info in self.equipItemList.items():
                items.getItem(info[1]).use(self)

            if equipIndex == 0:
                uid = self.inventory.getEquipUidByIndex(equipIndex)
                if uid == 0:
                    avatarCell.equipNotify(-1)
                else:
                    avatarCell.equipNotify(self.equipItemList[uid][1])
Example #3
0
 def useItemRequest(self, itemIndex):
     itemUUId = self.inventory.getItemUidByIndex(itemIndex)
     item = items.getItem(self.itemList[itemUUId][1])
     item.use(self)
     itemCount = self.itemList[itemUUId][2]
     itemId = self.inventory.removeItem(itemUUId, 1)
     if itemId == -1:  #只是减少物品数量,并没有销毁
         self.client.pickUp_re(self.itemList[itemUUId])
     else:  #销毁物品
         self.client.dropItem_re(itemId, itemUUId)
Example #4
0
	def useItemRequest(self, itemIndex):
		itemUUId = self.inventory.getItemUidByIndex(itemIndex)
		item = items.getItem(self.itemList[itemUUId][1])
		item.use(self)
		itemCount = self.itemList[itemUUId][2]
		itemId = self.inventory.removeItem( itemUUId, 1 )
		if itemId == -1:#只是减少物品数量,并没有销毁
			self.client.pickUp_re(self.itemList[itemUUId])
		else:#销毁物品
			self.client.dropItem_re( itemId, itemUUId)
Example #5
0
 def __init__(self, x, y, et, gc):
     self.gc = gc
     self.x, self.y, self.et = x, y, et
     self.stats = get_stats_enemy(et)
     self.maxhp = int(3 + (self.stats["vit"] * 0.6))
     self.activeWeapon = [items.getItem("Axe")]
     self.hp = self.maxhp
     self.combat = False
     self.turns = 1
     self.name = get_name_enemy(et)
     self.dead = False
Example #6
0
    def __init__(self, x, y):
        self.x = x
        self.y = y

        self.gc = None
        self.stats = {
            'atk': 25,
            'agi': 25,
            'def': 25,
            'mag': 25,
            'vit': 20,
            'crt': 25
        }
        self.maxhp = int(10 + (self.stats["vit"] * 0.6))
        self.name = "Craig"
        self.hp = int(self.maxhp)
        self.weapon = 0

        self.xp = 0
        self.nextxp = 100
        self.skillpoints = 32
        self.level = 1
        items.loadItems("items.json")
        self.inventory = [
            items.getItem("Bread"),
            items.getItem("Dirk"),
            items.getItem("Bread"),
            items.getItem("Bread"),
            items.getItem("Axe"),
        ]
        self.activeWeapon = [items.getItem("GoldSword")]
        self.facingIndex = 0
        self.facingDirection = FACING_DIRECTIONS[self.facingIndex]
        self.moveW = [(0, -1), (1, 0), (0, 1), (-1, 0)]
        self.moveS = [(0, 1), (-1, 0), (0, -1), (1, 0)]
        self.moveA = [(-1, 0), (0, -1), (1, 0), (0, 1)]
        self.moveD = [(1, 0), (0, 1), (-1, 0), (0, -1)]
        self.turns = 1
Example #7
0
 def updatePropertys(self):
     avatarCell = self.cell
     avatarCell.resetPropertys()
     for key, info in self.equipItemList.items():
         items.getItem(info[1]).use(self)
Example #8
0
 # check for locked doors that can be opened
 if permState.keys > 0:
     idx = tempState.hero.rect.collidelist(tempState.getLockedDoorRects())
     if idx >= 0: items.unlockDoor(idx)
 
 # check for collisions
 filter = INCLUDE_OBSTACLES
 if permState.keys == 0: filter = filter | INCLUDE_LOCKED_DOORS
 if not tempState.gotWings: filter = filter | INCLUDE_WATER_OBSTACLES | INCLUDE_POISON_OBSTACLES
 obstacles = tempState.getObstacles(filter)    
 pushables = tempState.getObstacles(INCLUDE_PUSHABLES)
 hitResult = tempState.hero.move(obstacles, None, tempState.getCreatureRects(), pushables)
 
 # check for item collection
 idx = tempState.hero.rect.collidelist(tempState.getAvailableItemRects())
 if idx >= 0: items.getItem(idx)
 
 # check for edge of screen
 if hitResult[HIT_EDGE] == DOWN:
     anim.scrollScreen(displaySurf, tempState.hero, permState.wx, permState.wy, permState.wz)
     tempState.hero.y, permState.wy = MIN_Y, permState.wy + 1
 elif hitResult[HIT_EDGE] == RIGHT:
     anim.scrollScreen(displaySurf, tempState.hero, permState.wx, permState.wy, permState.wz)
     tempState.hero.x, permState.wx = MIN_X, permState.wx + 1
 elif hitResult[HIT_EDGE] == UP:
     anim.scrollScreen(displaySurf, tempState.hero, permState.wx, permState.wy, permState.wz)
     tempState.hero.y, permState.wy = MAX_Y, permState.wy - 1
 elif hitResult[HIT_EDGE] == LEFT:
     anim.scrollScreen(displaySurf, tempState.hero, permState.wx, permState.wy, permState.wz)
     tempState.hero.x, permState.wx = MAX_X, permState.wx - 1
 if hitResult[HIT_EDGE] != None:
Example #9
0
	def updatePropertys(self):
		avatarCell = self.cell
		avatarCell.resetPropertys()
		for key, info in self.equipItemList.items():
			items.getItem(info[1]).use(self)