[Python]Cum modific uitombola.py sa dea doar un item

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

Nou Venit
Mesaje: 1
Membru din: 24 Iul 2017, 21:57
Aprecieri: 0
Mulţumiri: 0
Medalii

Salut , cum pot modifica acest script in asa fel incât el să dea itemul doar de pe pozitia 7?
Menționez că vreau să fac în așa fel incât să dea doar un singur item ca să trolez jucătorii , poți folosii tombola la 12 ore fiind un timer pus , dar atunci cand ei o folosesc as vrea sa ii trolez putin , timp de o saptamana.
PS: Multi o sa ziceti să modific direct itemul in quest , pai daca modific in quest o sa se vada in tombola acelas item peste tot.
Aici este scriptul python.
import app
import constInfo
import ui
import uiToolTip
import item
import locale
import player
import grp
import time
import event

class TombolaWindow(ui.BoardWithTitleBar):
	
	def __init__(self):
		ui.BoardWithTitleBar.__init__(self)
		self.__BuildWindow()
		
	def __del__(self):
		ui.BoardWithTitleBar.__del__(self)
	
	def __BuildWindow(self):
		
		self.xOpen = 0
		self.yOpen = 0
		
		self.speedDown = 5
		self.timeDiff = 0.1
		
		self.tooltipItem = None
		
		self.animate = FALSE
		self.blink = FALSE
		
		self.blinkTimes = 6
		self.blinkLast = 0
		
		self.position = 1
		self.toPosition = 16
		self.lastClock = 0
		
		self.SetSize(341, 364)
		self.AddFlag("float")
		self.AddFlag("movable")
		self.SetTitleName("Ruleta Destinului")
		self.SetCloseEvent(ui.__mem_func__(self.OnClose))
		
		image = ui.ImageBox()
		image.SetParent(self)
		image.LoadImage("locale/ro/ui/tombola/background.tga")
		image.SetPosition(6, 29)
		image.Show()
		self.background = image
		
		select = ui.ImageBox()
		select.SetParent(self.background)
		select.SetPosition(0, 0)
		select.LoadImage("locale/ro/ui/tombola/1.tga")
		select.Hide()
		self.select = select
		
		button = ui.Button()
		button.SetParent(self.background)
		button.SetPosition(125, 124)
		button.SetUpVisual("locale/ro/ui/tombola/button.tga")
		button.SetOverVisual("locale/ro/ui/tombola/button_hover.tga")
		button.SetDownVisual("locale/ro/ui/tombola/button_down.tga")
		button.SetEvent(ui.__mem_func__(self.OnButtonClick))
		button.Show()
		self.run = button
		
		self.slots = [
			self.__CreateSlot(1, 161 - 5, 53 - 4),
			self.__CreateSlot(2, 207 - 5, 63 - 4),
			self.__CreateSlot(3, 248 - 5, 93 - 4),
			self.__CreateSlot(4, 277 - 5, 135 - 4),
			self.__CreateSlot(5, 290 - 5, 182 - 4),
			self.__CreateSlot(6, 277 - 5, 228 - 4),
			self.__CreateSlot(7, 248 - 5, 271 - 4),
			self.__CreateSlot(8, 207 - 5, 298 - 4),
			self.__CreateSlot(9, 160 - 5, 307 - 4),
			self.__CreateSlot(10, 114 - 5, 296 - 4),
			self.__CreateSlot(11, 72 - 5, 269 - 4),
			self.__CreateSlot(12, 44 - 5, 229 - 4),
			self.__CreateSlot(13, 30 - 5, 183 - 4),
			self.__CreateSlot(14, 41 - 5, 133 - 4),
			self.__CreateSlot(15, 70 - 5, 92 - 4),
			self.__CreateSlot(16, 112 - 5, 63 - 4)
		]
		
		self.items = {}
		
	def __CreateSlot(self, number, x, y):
		grid = ui.GridSlotWindow()
		grid.SetParent(self)
		grid.SetPosition(x, y)
		grid.ArrangeSlot(number, 1, 1, 32, 32, 0, 0)
		grid.SetOverInItemEvent(ui.__mem_func__(self.OverInItem))
		grid.SetOverOutItemEvent(ui.__mem_func__(self.OverOutItem))
		grid.RefreshSlot()
		grid.Show()
		
		return grid
	
	def OverInItem(self, slotIndex):
		if slotIndex < 1 or slotIndex > 16:
			return
		
		self.tooltipItem = uiToolTip.ItemToolTip()
		self.tooltipItem.AddItemData(self.items[slotIndex - 1], 0, 0)
		self.tooltipItem.Show()

	def OverOutItem(self):
		if self.tooltipItem:
			self.tooltipItem.HideToolTip()
			
	def OnButtonClick(self):
		self.run.Disable()
		self.run.Down()
		constInfo.VID = "tombola|begin"
		event.QuestButtonClick(constInfo.TOMBOLA)
	
	def OnPrepare(self, items):
		items = items.split("|")
		
		j = 0
		for i in range(0, 32, 2):
			self.slots[j].SetItemSlot(j + 1, int(items), int(items[i + 1]))
			self.items[j] = int(items)
			j += 1
		
	def OnRun(self, data):
		data = data.split("|")
		
		self.toPosition = int(data[0])
		self.speedDown = int(data[1])
		
		self.blinkTimes = 6
		self.blinkLast = 0
		
		self.position = 1
		self.animate = TRUE
		self.blink = FALSE
		self.timeDiff = 0.1
		
		self.lastClock = app.GetTime()
		
	def OnUpdate(self):
		if self.animate == TRUE:
			if (app.GetTime() - self.lastClock) >= self.timeDiff:
				self.lastClock = app.GetTime()
				
				self.toPosition -= 1
				
				if self.toPosition <= self.speedDown:
					self.timeDiff += 0.1
				
				self.position += 1
				if self.position == 17:
					self.position = 1
				
				if not self.select.IsShow():
					self.select.Show()
				
				self.select.LoadImage("locale/ro/ui/tombola/" + str(self.position) + ".tga")
				
				if self.toPosition == 0:
					self.animate = FALSE
					self.blink = TRUE
					
					self.run.Enable()
					self.run.SetUp()
					
					constInfo.VID = "tombola|end"
					event.QuestButtonClick(constInfo.TOMBOLA)
					
		if self.blink == TRUE and (app.GetTime() - self.blinkLast) >= 0.3:
			if self.blinkTimes > 0:
				if self.blinkTimes % 2:
					self.select.Hide()
				else:
					self.select.Show()
				self.blinkTimes -= 1
			else:	
				self.blink = FALSE
				self.blinkTimes = 6
				self.blinkLast = 0
				self.select.Hide()
				self.select.LoadImage("locale/ro/ui/tombola/1.tga")
				
			self.blinkLast = app.GetTime()
			
		(x, y, z) = player.GetMainCharacterPosition()
		if abs(x - self.xOpen) > 1000 or abs(y - self.yOpen) > 1000:
			self.Close()
			
	def Open(self):
		if not self.IsShow():
			self.Show()
			(self.xOpen, self.yOpen, z) = player.GetMainCharacterPosition()
		else:
			self.Close()
			
	def Close(self):
		if self.IsShow():
			self.Hide()
			
	def OnClose(self):
		self.Close()
		
	def OnPressEscapeKey(self):
		self.Close()
		return TRUE
Avatar utilizator
maic
Membru Club

Membru Club
Mesaje: 936
Membru din: 20 Sep 2015, 18:00
Aprecieri: 37  
Mulţumiri: 1331  
Discord: Copiază ID
Medalii

In quest pui la numar 1 si aia e.
ImagineImagine
Afișează semnătura
Avatar utilizator
Syxov
Nivel 10

Nivel 10
Mesaje: 2197
Membru din: 18 Sep 2016, 17:34
Server: SonyMt2
Regat: Jinno
Aprecieri: 70  
Mulţumiri: 138  
Discord: Copiază ID
Medalii

WarningSubiect inactiv , arhivat !
Imagine
Afișează semnătura
Închis
Răspunsuri
5
Vizualizări
494
Răspunsuri
12
Vizualizări
1090
Răspunsuri
9
Vizualizări
576

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

  • Informaţie
  • Cine este conectat

    Utilizatori ce ce navighează pe acest forum: Google [Bot] și 136 vizitatori