Intrebare carti

Totalitatea subiectelor care nu respectă regulamentul impus in sectiunea "Probleme şi Întrebări" vor fi stocate aici.
Închis
Avatar utilizator
ronny112
Nivel 2

Nivel 2
Mesaje: 181
Membru din: 03 Noi 2013, 15:43
Regat: Jinno
Aprecieri: 1  
Mulţumiri: 0
Medalii

Salut , ce trebuie sa modific in navicat la linia cartilor ca sa nu mai dispara toate cartile cand dau click pe ele
vreau sa le citeasca pe rand , cate 1
Avatar utilizator
KinKade
Membru Club

Membru Club
Mesaje: 1224
Membru din: 10 Mar 2014, 19:39
Server: Quirin2
Regat: Jinno
Aprecieri: 132  
Mulţumiri: 55  
Discord: Copiază ID
 Contact:
Medalii

Deschideti uiinventory.py si cautati def __UseItem(self, slotIndex):
Imagine Sub linia item.SelectItem(ItemVNum) adaugati:

Cod: Selectaţi tot

itemCount = player.GetItemCount(slotIndex)
getItemVNum=player.GetItemIndex
getItemCount=player.GetItemCount
Iar sub self.questionDialog.slotIndex = slotIndex linia 1122 la mine, adaugati:​

Cod: Selectaţi tot

if ItemVNum == 50300 and itemCount > 1:
            if player.GetItemIndex(0) == 0 :
                    net.SendItemMovePacket(slotIndex, 0, 1)
                    self.__SendUseItemPacket(0)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 0, attachedCount)
                   
            if player.GetItemIndex(1) == 0:
                    net.SendItemMovePacket(slotIndex, 1, 1)
                    self.__SendUseItemPacket(1)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 1, attachedCount)
                   
            if player.GetItemIndex(2) == 0:
                    net.SendItemMovePacket(slotIndex, 2, 1)
                    self.__SendUseItemPacket(2)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 2, attachedCount)
            if player.GetItemIndex(3) == 0:
                    net.SendItemMovePacket(slotIndex, 3, 1)
                    self.__SendUseItemPacket(3)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 3, attachedCount)
            if player.GetItemIndex(4) == 0:
                    net.SendItemMovePacket(slotIndex, 4, 1)
                    self.__SendUseItemPacket(4)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 4, attachedCount)
            if player.GetItemIndex(5) == 0:
                    net.SendItemMovePacket(slotIndex, 5, 1)
                    self.__SendUseItemPacket(5)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 5, attachedCount)
            if player.GetItemIndex(6) == 0:
                    net.SendItemMovePacket(slotIndex, 6, 1)
                    self.__SendUseItemPacket(6)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 6, attachedCount)
            if player.GetItemIndex(7) == 0:
                    net.SendItemMovePacket(slotIndex, 7, 1)
                    self.__SendUseItemPacket(7)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 7, attachedCount)
            if player.GetItemIndex(8) == 0:
                    net.SendItemMovePacket(slotIndex, 8, 1)
                    self.__SendUseItemPacket(8)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 8, attachedCount)
            if player.GetItemIndex(9) == 0:
                    net.SendItemMovePacket(slotIndex, 9, 1)
                    self.__SendUseItemPacket(9)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 9, attachedCount)
            if player.GetItemIndex(10) == 0:
                    net.SendItemMovePacket(slotIndex, 10, 1)
                    self.__SendUseItemPacket(10)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 10, attachedCount)
            if player.GetItemIndex(11) == 0:
                    net.SendItemMovePacket(slotIndex, 11, 1)
                    self.__SendUseItemPacket(11)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 11, attachedCount)
            if player.GetItemIndex(12) == 0:
                    net.SendItemMovePacket(slotIndex, 12, 1)
                    self.__SendUseItemPacket(12)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 12, attachedCount)
            if player.GetItemIndex(13) == 0:
                    net.SendItemMovePacket(slotIndex, 13, 1)
                    self.__SendUseItemPacket(13)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 13, attachedCount)
            if player.GetItemIndex(14) == 0:
                    net.SendItemMovePacket(slotIndex, 14, 1)
                    self.__SendUseItemPacket(14)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 14, attachedCount)
            if player.GetItemIndex(15) == 0:
                    net.SendItemMovePacket(slotIndex, 15, 1)
                    self.__SendUseItemPacket(15)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 15, attachedCount)
            if player.GetItemIndex(16) == 0:
                    net.SendItemMovePacket(slotIndex, 16, 1)
                    self.__SendUseItemPacket(16)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 16, attachedCount)
            if player.GetItemIndex(17) == 0:
                    net.SendItemMovePacket(slotIndex, 17, 1)
                    self.__SendUseItemPacket(17)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 17, attachedCount)
            if player.GetItemIndex(18) == 0:
                    net.SendItemMovePacket(slotIndex, 18, 1)
                    self.__SendUseItemPacket(18)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 18, attachedCount)
            if player.GetItemIndex(19) == 0:
                    net.SendItemMovePacket(slotIndex, 19, 1)
                    self.__SendUseItemPacket(19)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 19, attachedCount)
            if player.GetItemIndex(20) == 0:
                    net.SendItemMovePacket(slotIndex, 20, 1)
                    self.__SendUseItemPacket(20)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 20, attachedCount)
            if player.GetItemIndex(21) == 0:
                    net.SendItemMovePacket(slotIndex, 21, 1)
                    self.__SendUseItemPacket(21)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 21, attachedCount)
            if player.GetItemIndex(22) == 0:
                    net.SendItemMovePacket(slotIndex, 22, 1)
                    self.__SendUseItemPacket(22)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 22, attachedCount)
            if player.GetItemIndex(23) == 0:
                    net.SendItemMovePacket(slotIndex, 23, 1)
                    self.__SendUseItemPacket(23)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 23, attachedCount)
            if player.GetItemIndex(24) == 0:
                    net.SendItemMovePacket(slotIndex, 24, 1)
                    self.__SendUseItemPacket(24)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 24, attachedCount)
            if player.GetItemIndex(25) == 0:
                    net.SendItemMovePacket(slotIndex, 25, 1)
                    self.__SendUseItemPacket(25)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 25, attachedCount)
            if player.GetItemIndex(26) == 0:
                    net.SendItemMovePacket(slotIndex, 26, 1)
                    self.__SendUseItemPacket(26)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 26, attachedCount)
            if player.GetItemIndex(27) == 0:
                    net.SendItemMovePacket(slotIndex, 27, 1)
                    self.__SendUseItemPacket(27)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 27, attachedCount)
            if player.GetItemIndex(28) == 0:
                    net.SendItemMovePacket(slotIndex, 28, 1)
                    self.__SendUseItemPacket(28)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 28, attachedCount)
            if player.GetItemIndex(29) == 0:
                    net.SendItemMovePacket(slotIndex, 29, 1)
                    self.__SendUseItemPacket(29)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 29, attachedCount)
            if player.GetItemIndex(30) == 0:
                    net.SendItemMovePacket(slotIndex, 30, 1)
                    self.__SendUseItemPacket(30)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 30, attachedCount)
            if player.GetItemIndex(31) == 0:
                    net.SendItemMovePacket(slotIndex, 31, 1)
                    self.__SendUseItemPacket(31)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 31, attachedCount)
            if player.GetItemIndex(32) == 0:
                    net.SendItemMovePacket(slotIndex, 32, 1)
                    self.__SendUseItemPacket(32)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 32, attachedCount)
            if player.GetItemIndex(33) == 0:
                    net.SendItemMovePacket(slotIndex, 33, 1)
                    self.__SendUseItemPacket(33)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 33, attachedCount)
            if player.GetItemIndex(34) == 0:
                    net.SendItemMovePacket(slotIndex, 34, 1)
                    self.__SendUseItemPacket(34)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 34, attachedCount)
            if player.GetItemIndex(35) == 0:
                    net.SendItemMovePacket(slotIndex, 35, 1)
                    self.__SendUseItemPacket(35)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 35, attachedCount)
            if player.GetItemIndex(36) == 0:
                    net.SendItemMovePacket(slotIndex, 36, 1)
                    self.__SendUseItemPacket(36)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 36, attachedCount)
            if player.GetItemIndex(37) == 0:
                    net.SendItemMovePacket(slotIndex, 37, 1)
                    self.__SendUseItemPacket(37)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 37, attachedCount)
            if player.GetItemIndex(38) == 0:
                    net.SendItemMovePacket(slotIndex, 38, 1)
                    self.__SendUseItemPacket(38)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 38, attachedCount)
            if player.GetItemIndex(39) == 0:
                    net.SendItemMovePacket(slotIndex, 39, 1)
                    self.__SendUseItemPacket(39)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 39, attachedCount)
            if player.GetItemIndex(40) == 0:
                    net.SendItemMovePacket(slotIndex, 40, 1)
                    self.__SendUseItemPacket(40)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 40, attachedCount)
            if player.GetItemIndex(41) == 0:
                    net.SendItemMovePacket(slotIndex, 41, 1)
                    self.__SendUseItemPacket(41)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 41, attachedCount)
            if player.GetItemIndex(42) == 0:
                    net.SendItemMovePacket(slotIndex, 42, 1)
                    self.__SendUseItemPacket(42)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 42, attachedCount)
            if player.GetItemIndex(43) == 0:
                    net.SendItemMovePacket(slotIndex, 43, 1)
                    self.__SendUseItemPacket(43)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 43, attachedCount)
            if player.GetItemIndex(44) == 0:
                    net.SendItemMovePacket(slotIndex, 44, 1)
                    self.__SendUseItemPacket(44)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 44, attachedCount)
            if player.GetItemIndex(45) == 0:
                    net.SendItemMovePacket(slotIndex, 45, 1)
                    self.__SendUseItemPacket(45)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 45, attachedCount)
            if player.GetItemIndex(46) == 0:
                    net.SendItemMovePacket(slotIndex, 46, 1)
                    self.__SendUseItemPacket(46)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 46, attachedCount)
            if player.GetItemIndex(47) == 0:
                    net.SendItemMovePacket(slotIndex, 47, 1)
                    self.__SendUseItemPacket(47)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 47, attachedCount)
            if player.GetItemIndex(48) == 0:
                    net.SendItemMovePacket(slotIndex, 48, 1)
                    self.__SendUseItemPacket(48)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 48, attachedCount)
            if player.GetItemIndex(49) == 0:
                    net.SendItemMovePacket(slotIndex, 49, 1)
                    self.__SendUseItemPacket(49)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 49, attachedCount)
            if player.GetItemIndex(50) == 0:
                    net.SendItemMovePacket(slotIndex, 50, 1)
                    self.__SendUseItemPacket(50)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 50, attachedCount)
            if player.GetItemIndex(51) == 0:
                    net.SendItemMovePacket(slotIndex, 51, 1)
                    self.__SendUseItemPacket(51)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 51, attachedCount)
            if player.GetItemIndex(52) == 0:
                    net.SendItemMovePacket(slotIndex, 52, 1)
                    self.__SendUseItemPacket(52)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 52, attachedCount)
            if player.GetItemIndex(53) == 0:
                    net.SendItemMovePacket(slotIndex, 53, 1)
                    self.__SendUseItemPacket(53)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 53, attachedCount)
            if player.GetItemIndex(54) == 0:
                    net.SendItemMovePacket(slotIndex, 54, 1)
                    self.__SendUseItemPacket(54)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 54, attachedCount)
            if player.GetItemIndex(55) == 0:
                    net.SendItemMovePacket(slotIndex, 55, 1)
                    self.__SendUseItemPacket(55)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 55, attachedCount)
            if player.GetItemIndex(56) == 0:
                    net.SendItemMovePacket(slotIndex, 56, 1)
                    self.__SendUseItemPacket(56)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 56, attachedCount)
            if player.GetItemIndex(57) == 0:
                    net.SendItemMovePacket(slotIndex, 57, 1)
                    self.__SendUseItemPacket(57)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 57, attachedCount)
            if player.GetItemIndex(58) == 0:
                    net.SendItemMovePacket(slotIndex, 58, 1)
                    self.__SendUseItemPacket(58)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 58, attachedCount)
            if player.GetItemIndex(59) == 0:
                    net.SendItemMovePacket(slotIndex, 59, 1)
                    self.__SendUseItemPacket(59)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 59, attachedCount)
            if player.GetItemIndex(60) == 0:
                    net.SendItemMovePacket(slotIndex, 60, 1)
                    self.__SendUseItemPacket(60)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 60, attachedCount)
            if player.GetItemIndex(61) == 0:
                    net.SendItemMovePacket(slotIndex, 61, 1)
                    self.__SendUseItemPacket(61)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 61, attachedCount)
            if player.GetItemIndex(62) == 0:
                    net.SendItemMovePacket(slotIndex, 62, 1)
                    self.__SendUseItemPacket(62)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 62, attachedCount)
            if player.GetItemIndex(63) == 0:
                    net.SendItemMovePacket(slotIndex, 63, 1)
                    self.__SendUseItemPacket(63)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 63, attachedCount)
            if player.GetItemIndex(64) == 0:
                    net.SendItemMovePacket(slotIndex, 64, 1)
                    self.__SendUseItemPacket(64)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 64, attachedCount)
            if player.GetItemIndex(65) == 0:
                    net.SendItemMovePacket(slotIndex, 65, 1)
                    self.__SendUseItemPacket(65)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 65, attachedCount)
            if player.GetItemIndex(66) == 0:
                    net.SendItemMovePacket(slotIndex, 66, 1)
                    self.__SendUseItemPacket(66)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 66, attachedCount)
            if player.GetItemIndex(67) == 0:
                    net.SendItemMovePacket(slotIndex, 67, 1)
                    self.__SendUseItemPacket(67)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 67, attachedCount)
            if player.GetItemIndex(68) == 0:
                    net.SendItemMovePacket(slotIndex, 68, 1)
                    self.__SendUseItemPacket(68)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 68, attachedCount)
            if player.GetItemIndex(69) == 0:
                    net.SendItemMovePacket(slotIndex, 69, 1)
                    self.__SendUseItemPacket(69)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 69, attachedCount)
            if player.GetItemIndex(70) == 0:
                    net.SendItemMovePacket(slotIndex, 70, 1)
                    self.__SendUseItemPacket(70)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 70, attachedCount)
            if player.GetItemIndex(71) == 0:
                    net.SendItemMovePacket(slotIndex, 71, 1)
                    self.__SendUseItemPacket(71)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 71, attachedCount)
            if player.GetItemIndex(72) == 0:
                    net.SendItemMovePacket(slotIndex, 72, 1)
                    self.__SendUseItemPacket(72)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 72, attachedCount)
            if player.GetItemIndex(73) == 0:
                    net.SendItemMovePacket(slotIndex, 73, 1)
                    self.__SendUseItemPacket(73)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 73, attachedCount)
            if player.GetItemIndex(74) == 0:
                    net.SendItemMovePacket(slotIndex, 74, 1)
                    self.__SendUseItemPacket(74)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 74, attachedCount)
            if player.GetItemIndex(75) == 0:
                    net.SendItemMovePacket(slotIndex, 75, 1)
                    self.__SendUseItemPacket(75)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 75, attachedCount)
            if player.GetItemIndex(76) == 0:
                    chat.AppendChat(chat.CHAT_TYPE_INFO, "76 kliber")
                    net.SendItemMovePacket(slotIndex, 76, 1)
                    self.__SendUseItemPacket(76)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 76, attachedCount)
            if player.GetItemIndex(77) == 0:
                    net.SendItemMovePacket(slotIndex, 77, 1)
                    self.__SendUseItemPacket(77)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 77, attachedCount)
            if player.GetItemIndex(78) == 0:
                    net.SendItemMovePacket(slotIndex, 78, 1)
                    self.__SendUseItemPacket(78)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 78, attachedCount)
            if player.GetItemIndex(79) == 0:
                    net.SendItemMovePacket(slotIndex, 79, 1)
                    self.__SendUseItemPacket(79)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 79, attachedCount)
            if player.GetItemIndex(80) == 0:
                    net.SendItemMovePacket(slotIndex, 80, 1)
                    self.__SendUseItemPacket(80)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 80, attachedCount)
            if player.GetItemIndex(81) == 0:
                    net.SendItemMovePacket(slotIndex, 81, 1)
                    self.__SendUseItemPacket(81)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 81, attachedCount)
            if player.GetItemIndex(82) == 0:
                    net.SendItemMovePacket(slotIndex, 82, 1)
                    self.__SendUseItemPacket(82)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 82, attachedCount)
            if player.GetItemIndex(83) == 0:
                    net.SendItemMovePacket(slotIndex, 83, 1)
                    self.__SendUseItemPacket(83)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 83, attachedCount)
            if player.GetItemIndex(84) == 0:
                    net.SendItemMovePacket(slotIndex, 84, 1)
                    self.__SendUseItemPacket(84)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 84, attachedCount)
            if player.GetItemIndex(85) == 0:
                    net.SendItemMovePacket(slotIndex, 85, 1)
                    self.__SendUseItemPacket(85)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 85, attachedCount)
            if player.GetItemIndex(86) == 0:
                    net.SendItemMovePacket(slotIndex, 86, 1)
                    self.__SendUseItemPacket(86)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 86, attachedCount)
            if player.GetItemIndex(87) == 0:
                    net.SendItemMovePacket(slotIndex, 87, 1)
                    self.__SendUseItemPacket(87)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 87, attachedCount)
            if player.GetItemIndex(88) == 0:
                    net.SendItemMovePacket(slotIndex, 88, 1)
                    self.__SendUseItemPacket(88)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 88, attachedCount)
            if player.GetItemIndex(89) == 0:
                for i in xrange(player.INVENTORY_PAGE_SIZE*2):
                    net.SendItemMovePacket(slotIndex, 89, 1)
                    self.__SendUseItemPacket(89)
                    attachedCount = mouseModule.mouseController.GetAttachedItemCount()
                    net.SendItemMovePacket(slotIndex, 89, attachedCount)
                else:
                    chat.AppendChat(chat.CHAT_TYPE_INFO, "Inventarul este plin,este nevoie de minim un loc liber!")
                    return
Imagine Ai grija la taburi tot ce am pus acolo trebuie cu tab.
Discord: Koshmar#3873
Afișează semnătura
Avatar utilizator
Helios
Membru Club

Membru Club
Mesaje: 1950
Membru din: 09 Apr 2014, 21:02
Aprecieri: 2  
Mulţumiri: 208  
 Contact:
Medalii

Dacă folosești 34k poți face acest lucru prin aplicarea unui diff, iar dacă ai 40k din sursă.
Imagine
Afișează semnătura
Avatar utilizator
ronny112
Nivel 2

Nivel 2
Mesaje: 181
Membru din: 03 Noi 2013, 15:43
Regat: Jinno
Aprecieri: 1  
Mulţumiri: 0
Medalii

Nu prea ma descurc la linii , ma poti ajuta tu te rog ? uite aici continutul

Cod: Selectaţi tot

import ui
import player
import mouseModule
import net
import app
import snd
import item
import player
import chat
import grp
import uiScriptLocale
import uiRefine
import uiAttachMetin
import uiPickMoney
import uiCommon
import uiPrivateShopBuilder # 개인상점 열동안 ItemMove 방지
import locale
import constInfo
import ime


ITEM_MALL_BUTTON_ENABLE = TRUE



ITEM_FLAG_APPLICABLE = 1 << 14

class CostumeWindow(ui.ScriptWindow):

	def __init__(self, wndInventory):
		import exception
		
		if not app.ENABLE_COSTUME_SYSTEM:			
			exception.Abort("What do you do?")
			return

		if not wndInventory:
			exception.Abort("wndInventory parameter must be set to InventoryWindow")
			return						
			 	 
		ui.ScriptWindow.__init__(self)

		self.isLoaded = 0
		self.wndInventory = wndInventory;

		self.__LoadWindow()

	def __del__(self):
		ui.ScriptWindow.__del__(self)

	def Show(self):
		self.__LoadWindow()
		self.RefreshCostumeSlot()

		ui.ScriptWindow.Show(self)

	def Close(self):
		self.Hide()

	def __LoadWindow(self):
		if self.isLoaded == 1:
			return

		self.isLoaded = 1

		try:
			pyScrLoader = ui.PythonScriptLoader()
			pyScrLoader.LoadScriptFile(self, "UIScript/CostumeWindow.py")
		except:
			import exception
			exception.Abort("CostumeWindow.LoadWindow.LoadObject")

		try:
			wndEquip = self.GetChild("CostumeSlot")
			self.GetChild("TitleBar").SetCloseEvent(ui.__mem_func__(self.Close))
			
		except:
			import exception
			exception.Abort("CostumeWindow.LoadWindow.BindObject")

		## Equipment
		wndEquip.SetOverInItemEvent(ui.__mem_func__(self.wndInventory.OverInItem))
		wndEquip.SetOverOutItemEvent(ui.__mem_func__(self.wndInventory.OverOutItem))
		wndEquip.SetUnselectItemSlotEvent(ui.__mem_func__(self.wndInventory.UseItemSlot))
		wndEquip.SetUseSlotEvent(ui.__mem_func__(self.wndInventory.UseItemSlot))						
		wndEquip.SetSelectEmptySlotEvent(ui.__mem_func__(self.wndInventory.SelectEmptySlot))
		wndEquip.SetSelectItemSlotEvent(ui.__mem_func__(self.wndInventory.SelectItemSlot))

		self.wndEquip = wndEquip

	def RefreshCostumeSlot(self):
		getItemVNum=player.GetItemIndex
		
		for i in xrange(item.COSTUME_SLOT_COUNT):
			slotNumber = item.COSTUME_SLOT_START + i
			self.wndEquip.SetItemSlot(slotNumber, getItemVNum(slotNumber), 0)

		self.wndEquip.RefreshSlot()
		
		
class InventoryWindow(ui.ScriptWindow):

	USE_TYPE_TUPLE = ("USE_CLEAN_SOCKET", "USE_CHANGE_ATTRIBUTE", "USE_ADD_ATTRIBUTE", "USE_ADD_ATTRIBUTE2", "USE_ADD_ACCESSORY_SOCKET", "USE_PUT_INTO_ACCESSORY_SOCKET")

	def __init__(self):
		ui.ScriptWindow.__init__(self)
		self.questionDialog = None
		self.tooltipItem = None
		self.sellingSlotNumber = -1
		self.isLoaded = 0
		self.isOpenedCostumeWindowWhenClosingInventory = 0		# 인벤토리 닫을 때 코스츔이 열려있었는지 여부-_-; 네이밍 ㅈㅅ

		self.__LoadWindow()

	def __del__(self):
		ui.ScriptWindow.__del__(self)

	def Show(self):
		self.__LoadWindow()

		ui.ScriptWindow.Show(self)

		# 인벤토리를 닫을 때 코스츔이 열려있었다면 인벤토리를 열 때 코스츔도 같이 열도록 함.
		if self.isOpenedCostumeWindowWhenClosingInventory and self.wndCostume:
			self.wndCostume.Show() 

	def __LoadWindow(self):
		if self.isLoaded == 1:
			return

		self.isLoaded = 1

		try:
			pyScrLoader = ui.PythonScriptLoader()

			if ITEM_MALL_BUTTON_ENABLE:
				pyScrLoader.LoadScriptFile(self, uiScriptLocale.LOCALE_UISCRIPT_PATH + "InventoryWindow.py")
			else:
				pyScrLoader.LoadScriptFile(self, "UIScript/InventoryWindow.py")
		except:
			import exception
			exception.Abort("InventoryWindow.LoadWindow.LoadObject")

		try:
			wndItem = self.GetChild("ItemSlot")
			wndEquip = self.GetChild("EquipmentSlot")
			self.GetChild("TitleBar").SetCloseEvent(ui.__mem_func__(self.Close))
			self.wndMoney = self.GetChild("Money")
			self.wndMoneySlot = self.GetChild("Money_Slot")
			self.mallButton = self.GetChild2("MallButton")
			self.costumeButton = self.GetChild2("CostumeButton")
			
			self.inventoryTab = []
			self.inventoryTab.append(self.GetChild("Inventory_Tab_01"))
			self.inventoryTab.append(self.GetChild("Inventory_Tab_02"))

			self.equipmentTab = []
			self.equipmentTab.append(self.GetChild("Equipment_Tab_01"))
			self.equipmentTab.append(self.GetChild("Equipment_Tab_02"))

			if self.costumeButton and not app.ENABLE_COSTUME_SYSTEM:
				self.costumeButton.Hide()
				self.costumeButton.Destroy()
				self.costumeButton = 0

		except:
			import exception
			exception.Abort("InventoryWindow.LoadWindow.BindObject")

		## Item
		wndItem.SetSelectEmptySlotEvent(ui.__mem_func__(self.SelectEmptySlot))
		wndItem.SetSelectItemSlotEvent(ui.__mem_func__(self.SelectItemSlot))
		wndItem.SetUnselectItemSlotEvent(ui.__mem_func__(self.UseItemSlot))
		wndItem.SetUseSlotEvent(ui.__mem_func__(self.UseItemSlot))
		wndItem.SetOverInItemEvent(ui.__mem_func__(self.OverInItem))
		wndItem.SetOverOutItemEvent(ui.__mem_func__(self.OverOutItem))

		## Equipment
		wndEquip.SetSelectEmptySlotEvent(ui.__mem_func__(self.SelectEmptySlot))
		wndEquip.SetSelectItemSlotEvent(ui.__mem_func__(self.SelectItemSlot))
		wndEquip.SetUnselectItemSlotEvent(ui.__mem_func__(self.UseItemSlot))
		wndEquip.SetUseSlotEvent(ui.__mem_func__(self.UseItemSlot))
		wndEquip.SetOverInItemEvent(ui.__mem_func__(self.OverInItem))
		wndEquip.SetOverOutItemEvent(ui.__mem_func__(self.OverOutItem))

		## PickMoneyDialog
		dlgPickMoney = uiPickMoney.PickMoneyDialog()
		dlgPickMoney.LoadDialog()
		dlgPickMoney.Hide()

		## RefineDialog
		self.refineDialog = uiRefine.RefineDialog()
		self.refineDialog.Hide()

		## AttachMetinDialog
		self.attachMetinDialog = uiAttachMetin.AttachMetinDialog()
		self.attachMetinDialog.Hide()

		## MoneySlot
		self.wndMoneySlot.SetEvent(ui.__mem_func__(self.OpenPickMoneyDialog))

		self.inventoryTab[0].SetEvent(lambda arg=0: self.SetInventoryPage(arg))
		self.inventoryTab[1].SetEvent(lambda arg=1: self.SetInventoryPage(arg))
		self.inventoryTab[0].Down()

		self.equipmentTab[0].SetEvent(lambda arg=0: self.SetEquipmentPage(arg))
		self.equipmentTab[1].SetEvent(lambda arg=1: self.SetEquipmentPage(arg))
		self.equipmentTab[0].Down()
		self.equipmentTab[0].Hide()
		self.equipmentTab[1].Hide()

		self.wndItem = wndItem
		self.wndEquip = wndEquip
		self.dlgPickMoney = dlgPickMoney

		# MallButton
		if self.mallButton:
			self.mallButton.SetEvent(ui.__mem_func__(self.ClickMallButton))
        
		# Costume Button
		if self.costumeButton:
			self.costumeButton.SetEvent(ui.__mem_func__(self.ClickCostumeButton))

		self.wndCostume = None
		
 		#####

		## Refresh
		self.SetInventoryPage(0)
		self.SetEquipmentPage(0)
		self.RefreshItemSlot()
		self.RefreshStatus()

	def Destroy(self):
		self.ClearDictionary()

		self.dlgPickMoney.Destroy()
		self.dlgPickMoney = 0

		self.refineDialog.Destroy()
		self.refineDialog = 0

		self.attachMetinDialog.Destroy()
		self.attachMetinDialog = 0

		self.tooltipItem = None
		self.wndItem = 0
		self.wndEquip = 0
		self.dlgPickMoney = 0
		self.wndMoney = 0
		self.wndMoneySlot = 0
		self.questionDialog = None
		self.mallButton = None

		if self.wndCostume:
			self.wndCostume.Destroy()
			self.wndCostume = 0
			
		self.inventoryTab = []
		self.equipmentTab = []

	def Close(self):
		if None != self.tooltipItem:
			self.tooltipItem.HideToolTip()

		if self.wndCostume:
			self.isOpenedCostumeWindowWhenClosingInventory = self.wndCostume.IsShow()	# 인벤토리 창이 닫힐 때 코스츔이 열려 있었는가?
			self.wndCostume.Close()
 
		self.OnCloseQuestionDialog()
		self.dlgPickMoney.Close()
		self.Hide()

	def SetInventoryPage(self, page):
		self.inventoryPageIndex = page
		self.inventoryTab[1-page].SetUp()
		self.RefreshBagSlotWindow()

	def SetEquipmentPage(self, page):
		self.equipmentPageIndex = page
		self.equipmentTab[1-page].SetUp()
		self.RefreshEquipSlotWindow()

	def ClickMallButton(self):
		print "click_mall_button"
		net.SendChatPacket("/click_mall")

	def ClickCostumeButton(self):
		print "Click Costume Button"
		if self.wndCostume:
			if self.wndCostume.IsShow(): 
				self.wndCostume.Hide()
			else:
				self.wndCostume.Show()
		else:
			self.wndCostume = CostumeWindow(self)
			self.wndCostume.Show()

	def OpenPickMoneyDialog(self):

		if mouseModule.mouseController.isAttached():

			attachedSlotPos = mouseModule.mouseController.GetAttachedSlotNumber()
			if player.SLOT_TYPE_SAFEBOX == mouseModule.mouseController.GetAttachedType():

				if player.ITEM_MONEY == mouseModule.mouseController.GetAttachedItemIndex():
					net.SendSafeboxWithdrawMoneyPacket(mouseModule.mouseController.GetAttachedItemCount())
					snd.PlaySound("sound/ui/money.wav")

			mouseModule.mouseController.DeattachObject()

		else:
			curMoney = player.GetElk()

			if curMoney <= 0:
				return

			self.dlgPickMoney.SetTitleName(locale.PICK_MONEY_TITLE)
			self.dlgPickMoney.SetAcceptEvent(ui.__mem_func__(self.OnPickMoney))
			self.dlgPickMoney.Open(curMoney)
			self.dlgPickMoney.SetMax(7) # 인벤토리 990000 제한 버그 수정

	def OnPickMoney(self, money):
		mouseModule.mouseController.AttachMoney(self, player.SLOT_TYPE_INVENTORY, money)

	def OnPickItem(self, count):
		itemSlotIndex = self.dlgPickMoney.itemGlobalSlotIndex
		selectedItemVNum = player.GetItemIndex(itemSlotIndex)
		mouseModule.mouseController.AttachObject(self, player.SLOT_TYPE_INVENTORY, itemSlotIndex, selectedItemVNum, count)

	def __InventoryLocalSlotPosToGlobalSlotPos(self, local):

		if player.IsEquipmentSlot(local) or player.IsCostumeSlot(local):
			return local

		return self.inventoryPageIndex*player.INVENTORY_PAGE_SIZE + local

	def RefreshBagSlotWindow(self):
		getItemVNum=player.GetItemIndex
		getItemCount=player.GetItemCount
		setItemVNum=self.wndItem.SetItemSlot
		
		for i in xrange(player.INVENTORY_PAGE_SIZE):
			slotNumber = self.__InventoryLocalSlotPosToGlobalSlotPos(i)
			itemCount = getItemCount(slotNumber)
			if itemCount <= 1:
				itemCount = 0
				
			itemVnum = getItemVNum(slotNumber)
			setItemVNum(i, itemVnum, itemCount)
			
			## 자동물약 (HP: #72723 ~ #72726, SP: #72727 ~ #72730) 특수처리 - 아이템인데도 슬롯에 활성화/비활성화 표시를 위한 작업임 - [hyo]
			if constInfo.IS_AUTO_POTION(itemVnum):
				# metinSocket - [0] : 활성화 여부, [1] : 사용한 양, [2] : 최대 용량
				metinSocket = [player.GetItemMetinSocket(slotNumber, j) for j in xrange(player.METIN_SOCKET_MAX_NUM)]	
				
				if slotNumber >= player.INVENTORY_PAGE_SIZE:
					slotNumber -= player.INVENTORY_PAGE_SIZE
					
				isActivated = 0 != metinSocket[0]
				
				if isActivated:
					self.wndItem.ActivateSlot(slotNumber)
					potionType = 0;
					if constInfo.IS_AUTO_POTION_HP(itemVnum):
						potionType = player.AUTO_POTION_TYPE_HP
					elif constInfo.IS_AUTO_POTION_SP(itemVnum):
						potionType = player.AUTO_POTION_TYPE_SP						
					
					usedAmount = int(metinSocket[1])
					totalAmount = int(metinSocket[2])					
					player.SetAutoPotionInfo(potionType, isActivated, (totalAmount - usedAmount), totalAmount, self.__InventoryLocalSlotPosToGlobalSlotPos(i))
					
				else:
					self.wndItem.DeactivateSlot(slotNumber)			
					
		self.wndItem.RefreshSlot()

	def RefreshEquipSlotWindow(self):
		getItemVNum=player.GetItemIndex
		getItemCount=player.GetItemCount
		setItemVNum=self.wndEquip.SetItemSlot
		for i in xrange(player.EQUIPMENT_PAGE_COUNT):
			slotNumber = player.EQUIPMENT_SLOT_START + i
			itemCount = getItemCount(slotNumber)
			if itemCount <= 1:
				itemCount = 0
			setItemVNum(slotNumber, getItemVNum(slotNumber), itemCount)

		self.wndEquip.RefreshSlot()
		
		if self.wndCostume:
			self.wndCostume.RefreshCostumeSlot()

	def RefreshItemSlot(self):
		self.RefreshBagSlotWindow()
		self.RefreshEquipSlotWindow()

	def RefreshStatus(self):
		money = player.GetElk()
		self.wndMoney.SetText(locale.NumberToMoneyString(money))

	def SetItemToolTip(self, tooltipItem):
		self.tooltipItem = tooltipItem

	def SellItem(self):

		net.SendShopSellPacketNew(self.sellingSlotNumber, self.questionDialog.count)
		snd.PlaySound("sound/ui/money.wav")
		self.OnCloseQuestionDialog()

	def OnDetachMetinFromItem(self):
		if None == self.questionDialog:
			return
			
		#net.SendItemUseToItemPacket(self.questionDialog.sourcePos, self.questionDialog.targetPos)		
		self.__SendUseItemToItemPacket(self.questionDialog.sourcePos, self.questionDialog.targetPos)
		self.OnCloseQuestionDialog()

	def OnCloseQuestionDialog(self):
		if self.questionDialog:
			self.questionDialog.Close()

		self.questionDialog = None

	## Slot Event
	def SelectEmptySlot(self, selectedSlotPos):
		if constInfo.GET_ITEM_DROP_QUESTION_DIALOG_STATUS() == 1:
			return

		selectedSlotPos = self.__InventoryLocalSlotPosToGlobalSlotPos(selectedSlotPos)

		if mouseModule.mouseController.isAttached():

			attachedSlotType = mouseModule.mouseController.GetAttachedType()
			attachedSlotPos = mouseModule.mouseController.GetAttachedSlotNumber()
			attachedItemCount = mouseModule.mouseController.GetAttachedItemCount()
			attachedItemIndex = mouseModule.mouseController.GetAttachedItemIndex()

			if player.SLOT_TYPE_INVENTORY == attachedSlotType:
				itemCount = player.GetItemCount(attachedSlotPos)
				attachedCount = mouseModule.mouseController.GetAttachedItemCount()
				self.__SendMoveItemPacket(attachedSlotPos, selectedSlotPos, attachedCount)

				if item.IsRefineScroll(attachedItemIndex):
					self.wndItem.SetUseMode(FALSE)

			elif player.SLOT_TYPE_PRIVATE_SHOP == attachedSlotType:
				mouseModule.mouseController.RunCallBack("INVENTORY")

			elif player.SLOT_TYPE_SHOP == attachedSlotType:
				net.SendShopBuyPacket(attachedSlotPos)

			elif player.SLOT_TYPE_SAFEBOX == attachedSlotType:

				if player.ITEM_MONEY == attachedItemIndex:
					net.SendSafeboxWithdrawMoneyPacket(mouseModule.mouseController.GetAttachedItemCount())
					snd.PlaySound("sound/ui/money.wav")

				else:
					net.SendSafeboxCheckoutPacket(attachedSlotPos, selectedSlotPos)

			elif player.SLOT_TYPE_MALL == attachedSlotType:
				net.SendMallCheckoutPacket(attachedSlotPos, selectedSlotPos)

			mouseModule.mouseController.DeattachObject()

	def SelectItemSlot(self, itemSlotIndex):
		if constInfo.GET_ITEM_DROP_QUESTION_DIALOG_STATUS() == 1:
			return

		itemSlotIndex = self.__InventoryLocalSlotPosToGlobalSlotPos(itemSlotIndex)

		if mouseModule.mouseController.isAttached():
			attachedSlotType = mouseModule.mouseController.GetAttachedType()
			attachedSlotPos = mouseModule.mouseController.GetAttachedSlotNumber()
			attachedItemVID = mouseModule.mouseController.GetAttachedItemIndex()

			if player.SLOT_TYPE_INVENTORY == attachedSlotType:
				self.__DropSrcItemToDestItemInInventory(attachedItemVID, attachedSlotPos, itemSlotIndex)

			mouseModule.mouseController.DeattachObject()

		else:

			curCursorNum = app.GetCursor()
			if app.SELL == curCursorNum:
				self.__SellItem(itemSlotIndex)
				
			elif app.BUY == curCursorNum:
				chat.AppendChat(chat.CHAT_TYPE_INFO, locale.SHOP_BUY_INFO)

			elif app.IsPressed(app.DIK_LALT):
				link = player.GetItemLink(itemSlotIndex)
				ime.PasteString(link)

			elif app.IsPressed(app.DIK_LSHIFT):
				itemCount = player.GetItemCount(itemSlotIndex)
				
				if itemCount > 1:
					self.dlgPickMoney.SetTitleName(locale.PICK_ITEM_TITLE)
					self.dlgPickMoney.SetAcceptEvent(ui.__mem_func__(self.OnPickItem))
					self.dlgPickMoney.Open(itemCount)
					self.dlgPickMoney.itemGlobalSlotIndex = itemSlotIndex
				#else:
					#selectedItemVNum = player.GetItemIndex(itemSlotIndex)
					#mouseModule.mouseController.AttachObject(self, player.SLOT_TYPE_INVENTORY, itemSlotIndex, selectedItemVNum)

			elif app.IsPressed(app.DIK_LCONTROL):
				itemIndex = player.GetItemIndex(itemSlotIndex)

				if TRUE == item.CanAddToQuickSlotItem(itemIndex):
					player.RequestAddToEmptyLocalQuickSlot(player.SLOT_TYPE_INVENTORY, itemSlotIndex)
				else:
					chat.AppendChat(chat.CHAT_TYPE_INFO, locale.QUICKSLOT_REGISTER_DISABLE_ITEM)

			else:
				selectedItemVNum = player.GetItemIndex(itemSlotIndex)
				itemCount = player.GetItemCount(itemSlotIndex)
				mouseModule.mouseController.AttachObject(self, player.SLOT_TYPE_INVENTORY, itemSlotIndex, selectedItemVNum, itemCount)
				
				if self.__IsUsableItemToItem(selectedItemVNum, itemSlotIndex):				
					self.wndItem.SetUseMode(TRUE)
				else:					
					self.wndItem.SetUseMode(FALSE)

				snd.PlaySound("sound/ui/pick.wav")

	def __DropSrcItemToDestItemInInventory(self, srcItemVID, srcItemSlotPos, dstItemSlotPos):
		if srcItemSlotPos == dstItemSlotPos:
			return
					
		if item.IsRefineScroll(srcItemVID):
			self.RefineItem(srcItemSlotPos, dstItemSlotPos)
			self.wndItem.SetUseMode(FALSE)

		elif item.IsMetin(srcItemVID):
			self.AttachMetinToItem(srcItemSlotPos, dstItemSlotPos)

		elif item.IsDetachScroll(srcItemVID):
			self.DetachMetinFromItem(srcItemSlotPos, dstItemSlotPos)

		elif item.IsKey(srcItemVID):
			self.__SendUseItemToItemPacket(srcItemSlotPos, dstItemSlotPos)			

		elif (player.GetItemFlags(srcItemSlotPos) & ITEM_FLAG_APPLICABLE) == ITEM_FLAG_APPLICABLE:
			self.__SendUseItemToItemPacket(srcItemSlotPos, dstItemSlotPos)

		elif item.GetUseType(srcItemVID) in self.USE_TYPE_TUPLE:
			self.__SendUseItemToItemPacket(srcItemSlotPos, dstItemSlotPos)			

		else:
			#snd.PlaySound("sound/ui/drop.wav")

			## 이동시킨 곳이 장착 슬롯일 경우 아이템을 사용해서 장착 시킨다 - [levites]
			if player.IsEquipmentSlot(dstItemSlotPos):

				## 들고 있는 아이템이 장비일때만
				if item.IsEquipmentVID(srcItemVID):
					self.__UseItem(srcItemSlotPos)

			else:
				self.__SendMoveItemPacket(srcItemSlotPos, dstItemSlotPos, 0)
				#net.SendItemMovePacket(srcItemSlotPos, dstItemSlotPos, 0)

	def __SellItem(self, itemSlotPos):
		if not player.IsEquipmentSlot(itemSlotPos):
			self.sellingSlotNumber = itemSlotPos
			itemIndex = player.GetItemIndex(itemSlotPos)
			itemCount = player.GetItemCount(itemSlotPos)

			item.SelectItem(itemIndex)
			itemPrice = item.GetISellItemPrice()

			if item.Is1GoldItem():
				itemPrice = itemCount / itemPrice / 5
			else:
				itemPrice = itemPrice * itemCount / 5

			item.GetItemName(itemIndex)
			itemName = item.GetItemName()

			self.questionDialog = uiCommon.QuestionDialog()
			self.questionDialog.SetText(locale.DO_YOU_SELL_ITEM(itemName, itemCount, itemPrice))
			self.questionDialog.SetAcceptEvent(ui.__mem_func__(self.SellItem))
			self.questionDialog.SetCancelEvent(ui.__mem_func__(self.OnCloseQuestionDialog))
			self.questionDialog.Open()
			self.questionDialog.count = itemCount

	def RefineItem(self, scrollSlotPos, targetSlotPos):

		scrollIndex = player.GetItemIndex(scrollSlotPos)
		targetIndex = player.GetItemIndex(targetSlotPos)

		if player.REFINE_OK != player.CanRefine(scrollIndex, targetSlotPos):
			return

		###########################################################
		self.__SendUseItemToItemPacket(scrollSlotPos, targetSlotPos)
		#net.SendItemUseToItemPacket(scrollSlotPos, targetSlotPos)
		return
		###########################################################

		###########################################################
		#net.SendRequestRefineInfoPacket(targetSlotPos)
		#return
		###########################################################

		result = player.CanRefine(scrollIndex, targetSlotPos)

		if player.REFINE_ALREADY_MAX_SOCKET_COUNT == result:
			#snd.PlaySound("sound/ui/jaeryun_fail.wav")
			chat.AppendChat(chat.CHAT_TYPE_INFO, locale.REFINE_FAILURE_NO_MORE_SOCKET)

		elif player.REFINE_NEED_MORE_GOOD_SCROLL == result:
			#snd.PlaySound("sound/ui/jaeryun_fail.wav")
			chat.AppendChat(chat.CHAT_TYPE_INFO, locale.REFINE_FAILURE_NEED_BETTER_SCROLL)

		elif player.REFINE_CANT_MAKE_SOCKET_ITEM == result:
			#snd.PlaySound("sound/ui/jaeryun_fail.wav")
			chat.AppendChat(chat.CHAT_TYPE_INFO, locale.REFINE_FAILURE_SOCKET_DISABLE_ITEM)

		elif player.REFINE_NOT_NEXT_GRADE_ITEM == result:
			#snd.PlaySound("sound/ui/jaeryun_fail.wav")
			chat.AppendChat(chat.CHAT_TYPE_INFO, locale.REFINE_FAILURE_UPGRADE_DISABLE_ITEM)

		elif player.REFINE_CANT_REFINE_METIN_TO_EQUIPMENT == result:
			chat.AppendChat(chat.CHAT_TYPE_INFO, locale.REFINE_FAILURE_EQUIP_ITEM)

		if player.REFINE_OK != result:
			return

		self.refineDialog.Open(scrollSlotPos, targetSlotPos)

	def DetachMetinFromItem(self, scrollSlotPos, targetSlotPos):
		scrollIndex = player.GetItemIndex(scrollSlotPos)
		targetIndex = player.GetItemIndex(targetSlotPos)

		if not player.CanDetach(scrollIndex, targetSlotPos):
			chat.AppendChat(chat.CHAT_TYPE_INFO, locale.REFINE_FAILURE_METIN_INSEPARABLE_ITEM)
			return

		self.questionDialog = uiCommon.QuestionDialog()
		self.questionDialog.SetText(locale.REFINE_DO_YOU_SEPARATE_METIN)
		self.questionDialog.SetAcceptEvent(ui.__mem_func__(self.OnDetachMetinFromItem))
		self.questionDialog.SetCancelEvent(ui.__mem_func__(self.OnCloseQuestionDialog))
		self.questionDialog.Open()
		self.questionDialog.sourcePos = scrollSlotPos
		self.questionDialog.targetPos = targetSlotPos

	def AttachMetinToItem(self, metinSlotPos, targetSlotPos):
		metinIndex = player.GetItemIndex(metinSlotPos)
		targetIndex = player.GetItemIndex(targetSlotPos)

		item.SelectItem(metinIndex)
		itemName = item.GetItemName()

		result = player.CanAttachMetin(metinIndex, targetSlotPos)

		if player.ATTACH_METIN_NOT_MATCHABLE_ITEM == result:
			chat.AppendChat(chat.CHAT_TYPE_INFO, locale.REFINE_FAILURE_CAN_NOT_ATTACH(itemName))

		if player.ATTACH_METIN_NO_MATCHABLE_SOCKET == result:
			chat.AppendChat(chat.CHAT_TYPE_INFO, locale.REFINE_FAILURE_NO_SOCKET(itemName))

		elif player.ATTACH_METIN_NOT_EXIST_GOLD_SOCKET == result:
			chat.AppendChat(chat.CHAT_TYPE_INFO, locale.REFINE_FAILURE_NO_GOLD_SOCKET(itemName))

		elif player.ATTACH_METIN_CANT_ATTACH_TO_EQUIPMENT == result:
			chat.AppendChat(chat.CHAT_TYPE_INFO, locale.REFINE_FAILURE_EQUIP_ITEM)

		if player.ATTACH_METIN_OK != result:
			return

		self.attachMetinDialog.Open(metinSlotPos, targetSlotPos)


		
	def OverOutItem(self):
		self.wndItem.SetUsableItem(FALSE)
		if None != self.tooltipItem:
			self.tooltipItem.HideToolTip()

	def OverInItem(self, overSlotPos):
		overSlotPos = self.__InventoryLocalSlotPosToGlobalSlotPos(overSlotPos)
		self.wndItem.SetUsableItem(FALSE)

		if mouseModule.mouseController.isAttached():
			attachedItemType = mouseModule.mouseController.GetAttachedType()
			if player.SLOT_TYPE_INVENTORY == attachedItemType:

				attachedSlotPos = mouseModule.mouseController.GetAttachedSlotNumber()
				attachedItemVNum = mouseModule.mouseController.GetAttachedItemIndex()
				
				if self.__CanUseSrcItemToDstItem(attachedItemVNum, attachedSlotPos, overSlotPos):
					self.wndItem.SetUsableItem(TRUE)
					self.ShowToolTip(overSlotPos)
					return
				
		self.ShowToolTip(overSlotPos)


	def __IsUsableItemToItem(self, srcItemVNum, srcSlotPos):
		"다른 아이템에 사용할 수 있는 아이템인가?"

		if item.IsRefineScroll(srcItemVNum):
			return TRUE
		elif item.IsMetin(srcItemVNum):
			return TRUE
		elif item.IsDetachScroll(srcItemVNum):
			return TRUE
		elif item.IsKey(srcItemVNum):
			return TRUE
		elif (player.GetItemFlags(srcSlotPos) & ITEM_FLAG_APPLICABLE) == ITEM_FLAG_APPLICABLE:
			return TRUE
		else:
			if item.GetUseType(srcItemVNum) in self.USE_TYPE_TUPLE:
				return TRUE
			
		return FALSE

	def __CanUseSrcItemToDstItem(self, srcItemVNum, srcSlotPos, dstSlotPos):
		"대상 아이템에 사용할 수 있는가?"

		if srcSlotPos == dstSlotPos:
			return FALSE

		if item.IsRefineScroll(srcItemVNum):
			if player.REFINE_OK == player.CanRefine(srcItemVNum, dstSlotPos):
				return TRUE
		elif item.IsMetin(srcItemVNum):
			if player.ATTACH_METIN_OK == player.CanAttachMetin(srcItemVNum, dstSlotPos):
				return TRUE
		elif item.IsDetachScroll(srcItemVNum):
			if player.DETACH_METIN_OK == player.CanDetach(srcItemVNum, dstSlotPos):
				return TRUE
		elif item.IsKey(srcItemVNum):
			if player.CanUnlock(srcItemVNum, dstSlotPos):
				return TRUE

		elif (player.GetItemFlags(srcSlotPos) & ITEM_FLAG_APPLICABLE) == ITEM_FLAG_APPLICABLE:
			return TRUE

		else:
			useType=item.GetUseType(srcItemVNum)

			if "USE_CLEAN_SOCKET" == useType:
				if self.__CanCleanBrokenMetinStone(dstSlotPos):
					return TRUE
			elif "USE_CHANGE_ATTRIBUTE" == useType:
				if self.__CanChangeItemAttrList(dstSlotPos):
					return TRUE
			elif "USE_ADD_ATTRIBUTE" == useType:
				if self.__CanAddItemAttr(dstSlotPos):
					return TRUE
			elif "USE_ADD_ATTRIBUTE2" == useType:
				if self.__CanAddItemAttr(dstSlotPos):
					return TRUE
			elif "USE_ADD_ACCESSORY_SOCKET" == useType:
				if self.__CanAddAccessorySocket(dstSlotPos):
					return TRUE
			elif "USE_PUT_INTO_ACCESSORY_SOCKET" == useType:								
				if self.__CanPutAccessorySocket(dstSlotPos, srcItemVNum):
					return TRUE;

		return FALSE

	def __CanCleanBrokenMetinStone(self, dstSlotPos):
		dstItemVNum = player.GetItemIndex(dstSlotPos)
		if dstItemVNum == 0:
			return FALSE

		item.SelectItem(dstItemVNum)
		
		if item.ITEM_TYPE_WEAPON != item.GetItemType():
			return FALSE

		for i in xrange(player.METIN_SOCKET_MAX_NUM):
			if player.GetItemMetinSocket(dstSlotPos, i) == constInfo.ERROR_METIN_STONE:
				return TRUE

		return FALSE

	def __CanChangeItemAttrList(self, dstSlotPos):
		dstItemVNum = player.GetItemIndex(dstSlotPos)
		if dstItemVNum == 0:
			return FALSE

		item.SelectItem(dstItemVNum)
		
		if not item.GetItemType() in (item.ITEM_TYPE_WEAPON, item.ITEM_TYPE_ARMOR):	 
			return FALSE

		for i in xrange(player.METIN_SOCKET_MAX_NUM):
			if player.GetItemAttribute(dstSlotPos, i) != 0:
				return TRUE

		return FALSE

	def __CanPutAccessorySocket(self, dstSlotPos, mtrlVnum):
		dstItemVNum = player.GetItemIndex(dstSlotPos)
		if dstItemVNum == 0:
			return FALSE

		item.SelectItem(dstItemVNum)

		if item.GetItemType() != item.ITEM_TYPE_ARMOR:
			return FALSE

		if not item.GetItemSubType() in (item.ARMOR_WRIST, item.ARMOR_NECK, item.ARMOR_EAR):
			return FALSE

		curCount = player.GetItemMetinSocket(dstSlotPos, 0)
		maxCount = player.GetItemMetinSocket(dstSlotPos, 1)

		if mtrlVnum != constInfo.GET_ACCESSORY_MATERIAL_VNUM(dstItemVNum, item.GetItemSubType()):
			return FALSE
		
		if curCount>=maxCount:
			return FALSE

		return TRUE

	def __CanAddAccessorySocket(self, dstSlotPos):
		dstItemVNum = player.GetItemIndex(dstSlotPos)
		if dstItemVNum == 0:
			return FALSE

		item.SelectItem(dstItemVNum)

		if item.GetItemType() != item.ITEM_TYPE_ARMOR:
			return FALSE

		if not item.GetItemSubType() in (item.ARMOR_WRIST, item.ARMOR_NECK, item.ARMOR_EAR):
			return FALSE

		curCount = player.GetItemMetinSocket(dstSlotPos, 0)
		maxCount = player.GetItemMetinSocket(dstSlotPos, 1)
		
		ACCESSORY_SOCKET_MAX_SIZE = 3
		if maxCount >= ACCESSORY_SOCKET_MAX_SIZE:
			return FALSE

		return TRUE

	def __CanAddItemAttr(self, dstSlotPos):
		dstItemVNum = player.GetItemIndex(dstSlotPos)
		if dstItemVNum == 0:
			return FALSE

		item.SelectItem(dstItemVNum)
		
		if not item.GetItemType() in (item.ITEM_TYPE_WEAPON, item.ITEM_TYPE_ARMOR):	 
			return FALSE
			
		attrCount = 0
		for i in xrange(player.METIN_SOCKET_MAX_NUM):
			if player.GetItemAttribute(dstSlotPos, i) != 0:
				attrCount += 1

		if attrCount<4:
			return TRUE
								
		return FALSE

	def ShowToolTip(self, slotIndex):
		if None != self.tooltipItem:
			self.tooltipItem.SetInventoryItem(slotIndex)

	def OnTop(self):
		if None != self.tooltipItem:
			self.tooltipItem.SetTop()

	def OnPressEscapeKey(self):
		self.Close()
		return TRUE

	def UseItemSlot(self, slotIndex):
		if constInfo.GET_ITEM_DROP_QUESTION_DIALOG_STATUS():
			return

		slotIndex = self.__InventoryLocalSlotPosToGlobalSlotPos(slotIndex)

		self.__UseItem(slotIndex)
		mouseModule.mouseController.DeattachObject()
		self.OverOutItem()

	def __UseItem(self, slotIndex):
		ItemVNum = player.GetItemIndex(slotIndex)
		item.SelectItem(ItemVNum)
		if item.IsFlag(item.ITEM_FLAG_CONFIRM_WHEN_USE):
			self.questionDialog = uiCommon.QuestionDialog()
			self.questionDialog.SetText(locale.INVENTORY_REALLY_USE_ITEM)
			self.questionDialog.SetAcceptEvent(ui.__mem_func__(self.__UseItemQuestionDialog_OnAccept))
			self.questionDialog.SetCancelEvent(ui.__mem_func__(self.__UseItemQuestionDialog_OnCancel))
			self.questionDialog.Open()
			self.questionDialog.slotIndex = slotIndex

		else:
			self.__SendUseItemPacket(slotIndex)
			#net.SendItemUsePacket(slotIndex)	

	def __UseItemQuestionDialog_OnCancel(self):
		self.OnCloseQuestionDialog()

	def __UseItemQuestionDialog_OnAccept(self):
		self.__SendUseItemPacket(self.questionDialog.slotIndex)

		if self.questionDialog:
			self.questionDialog.Close()
		self.questionDialog = None

	def __SendUseItemToItemPacket(self, srcSlotPos, dstSlotPos):
		# 개인상점 열고 있는 동안 아이템 사용 방지
		if uiPrivateShopBuilder.IsBuildingPrivateShop():
			chat.AppendChat(chat.CHAT_TYPE_INFO, locale.USE_ITEM_FAILURE_PRIVATE_SHOP)
			return

		net.SendItemUseToItemPacket(srcSlotPos, dstSlotPos)

	def __SendUseItemPacket(self, slotPos):
		# 개인상점 열고 있는 동안 아이템 사용 방지
		if uiPrivateShopBuilder.IsBuildingPrivateShop():
			chat.AppendChat(chat.CHAT_TYPE_INFO, locale.USE_ITEM_FAILURE_PRIVATE_SHOP)
			return

		net.SendItemUsePacket(slotPos)
	
	def __SendMoveItemPacket(self, srcSlotPos, dstSlotPos, srcItemCount):
		# 개인상점 열고 있는 동안 아이템 사용 방지
		if uiPrivateShopBuilder.IsBuildingPrivateShop():
			chat.AppendChat(chat.CHAT_TYPE_INFO, locale.MOVE_ITEM_FAILURE_PRIVATE_SHOP)
			return

		net.SendItemMovePacket(srcSlotPos, dstSlotPos, srcItemCount)
Avatar utilizator
KinKade
Membru Club

Membru Club
Mesaje: 1224
Membru din: 10 Mar 2014, 19:39
Server: Quirin2
Regat: Jinno
Aprecieri: 132  
Mulţumiri: 55  
Discord: Copiază ID
 Contact:
Medalii

Eu nu am ce face cu el ca tot cu spatii il vede trebuie sa modifici in fisierul original cu taburi.
Discord: Koshmar#3873
Afișează semnătura
Închis
Răspunsuri
2
Vizualizări
231
Răspunsuri
1
Vizualizări
194
Răspunsuri
2
Vizualizări
417

Înapoi la “Arhivă Probleme şi Întrebări”

  • Informaţie
  • Cine este conectat

    Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 16 vizitatori