class WindowClass(QMainWindow, form_class) : Home = place("집",[]) StrFlag = strFlag.NONE SceneFlag = sceneFlag.START lastStr = "None" UnitList = [] PlaceList = [] player = unit("???", 120, 20, 20, Home, None) enemy = unit("ㅏㅏㅏ", 120, 20, 2, Home, None) def __init__(self) : super().__init__() self.setupUi(self) #self.btn_1.clicked.connect(self.button1Function) #self.btn_2.clicked.connect(self.button2Function) self.btn_clear.clicked.connect(self.mainTextBrowser.clear) self.mainLineEdit.returnPressed.connect(self.enterString) self.tabRefrash() Char_gen.charGenWindow(self) self.player.Window = self self.enemy.Window = self self.t = threading.Thread(target = self.gameLoop) self.t.daemon = True self.t.start() self.PlaceList,self.UnitList = saveAndLoad.load('C:/Users/rlawn/PycharmProject/NewGame/Savefile_example', None) saveAndLoad.save('C:/Users/rlawn/OneDrive/바탕 화면/원샷', self) def enterString(self): # 입력 text = self.mainLineEdit.text() if text != "": self.lastStr = text self.appendString(text,self.player.Name) self.mainLineEdit.clear() def appendString(self,text, *speaker): #말하기 if speaker == (): speaker = ("System",) speakers = "" for i in range(len(speaker)): speakers += str(speaker[i]) if i != len(speaker)-1: speakers += "," self.mainTextBrowser.append(speakers + " : " + str(text)) def tabRefrash(self): self.text_name.setText(self.player.Name) self.text_hp.setText(str(self.player.HP)) self.text_atk.setText(str(self.player.Atk)) self.text_place.setText(str(self.player.Place)) self.text_def.setText(str(self.player.Def)) def gameLoop(self): done = False while not done: if time.time() - int(time.time()) < 0.005: time.sleep(0.005)
def genUnits(self, cardGenerator, unitList): #Kører igennem unitList'en én linje ad gangen og genererer et kort for hver linje med cardGen for x, line in enumerate(unitList, 1): fileNumber = x split = line.split(", ") newUnit = unit(split[0], split[1], Image.open(split[2]), split[3], split[4]) self.units.append(newUnit) cardGenerator.createCard(newUnit, x)
class unitGenerator(): unitList = open('unitList.txt', 'r') units = [unit(1, 1, '', "", 0)] * 0 def __init__(self): self.unitList = open('unitList.txt', 'r') def getUnits(self): return self.units #Genererer units ved hjælp af et cardGenerator objekt og en unitList (en .txt-fil). def genUnits(self, cardGenerator, unitList): #Kører igennem unitList'en én linje ad gangen og genererer et kort for hver linje med cardGen for x, line in enumerate(unitList, 1): fileNumber = x split = line.split(", ") newUnit = unit(split[0], split[1], Image.open(split[2]), split[3], split[4]) self.units.append(newUnit) cardGenerator.createCard(newUnit, x)
img = Image.open("UnitsJacob/Placeholder.png") img = img.resize((100, 100)) phImg = ImageTk.PhotoImage( img) # Photoimage er nødvnedigt for at bruge det til knapper og labels images = [ Image.open("Warrior.png"), Image.open("UnitsJacob/Ninja.png"), Image.open("UnitsJacob/Chad.png") ] img2 = img.resize((25, 100)) my_img2 = ImageTk.PhotoImage(img2) unitList = [unit(1, 1, images[0], "")] * 0 #Liste over units på venstre side teamList = [unit(3, 3, images[0], "")] * 0 #Liste over units på højre side unitList = [ unit(2, 1, images[0], ""), unit(1, 5, images[1], ""), unit(10, 2, images[2], ""), ] row1 = 5 #Rækker af felter der skal laves col1 = 5 #Kolonner i første antal felter (Unit Listen) col2 = 1 #Kolonner i anden række (der skiller units og team) col3 = col1 + col2 + 1 #Kolonner i sidste antal felter (team listen) sortStr = ["Most Power", "Least Power", "Biggest Cost", "Smallest Cost"] curSortNum = len(
import cv2 as cv import numpy as np from Unit import unit textImg = np.zeros((500,500,3), np.uint8) textImg[:,200:500:] = (255,255,255) font = cv.FONT_HERSHEY_SIMPLEX #Instantiation af unit object q = unit(20, 200, cv.imread('icons\kinatestNEW.png')) #Fastlægger icon og template icon = q.icon template = cv.imread('icons\wemplateNEWEST.png') #Kombinerer template med icon card = template+icon #Opretter nyt billede newCard = cv.imwrite('cards\card00.png.png', card) #Det virker ikke #textCard = cv.putText(newCard, 'stfu?', (200,200), 1, 200, 0) cv.putText(textImg,'Hack Projects',(0,50), font, 1,(0,0,0),3) #Debugging cv.imshow('combined', card) cv.imshow('gaming', q.getIcon()) cv.imshow('text', template) #Det gør det ikke #cv.imshow('virker det?', textCard)
def generateData(graph): nodeList = {} #parameters used to generate each variable Cscale = [[1.5, 3], [6, 2], [.8, .8]] Uscale = [[2.3, 1.1], [.9, 1.1], [2, 2]] tauA = { 'intcp': -1, 'C0': .5, 'C1': .2, 'C2': .25, 'U0': .3, 'U1': -.2, 'U2': .25 } tauM = { 'intcp': -1, 'C0': -.3, 'C1': .4, 'C2': .1, 'A': 1, 'nborA': -.5, 'nborM': -1.5 } #nborM 1.5 tauY = { 'intcp': -.3, 'nborA': -1, 'M': 3, 'C0': -.2, 'C1': .2, 'C2': -.05, 'U0': .1, 'U1': -.2, 'U2': .25 } #initialize each node #C, U (each three-dimensional) are drawn from Beta distributions #A is a function of C and U for node in graph.adj: nodeList[node] = unit(np.zeros(3), np.zeros(3), graph.adj[node]) for i in range(len(Cscale)): nodeList[node].C[i] = np.random.beta(Cscale[i][0], Cscale[i][1]) nodeList[node].U[i] = np.random.beta(Uscale[i][0], Uscale[i][1]) sumA = tauA['intcp'] + (tauA['C0'] * nodeList[node].C[0]) + ( tauA['C1'] * nodeList[node].C[1]) sumA += (tauA['C2'] * nodeList[node].C[2]) + ( tauA['U0'] * nodeList[node].U[0]) + (tauA['U1'] * nodeList[node].U[1]) sumA += (tauA['U2'] * nodeList[node].U[2]) nodeList[node].A = np.random.binomial(1, expit(sumA)) #use Gibbs sampling to obtain M's for network M = np.random.binomial(1, .5, (1001, len(nodeList))) #Markov chain for M's M = Gibbs(1000, M, tauM, nodeList) M = M[1000] #Y is a function of it's parent M, its neighbor's A's, and its U for node in nodeList: nodeList[node].M = M[node] sumY = tauY['intcp'] + (tauY['M'] * nodeList[node].M) + ( tauY['C0'] * nodeList[node].C[0]) sumY += (tauY['C1'] * nodeList[node].C[1]) + ( tauY['C2'] * nodeList[node].C[2]) + (tauY['U0'] * nodeList[node].U[0]) sumY += (tauY['U1'] * nodeList[node].U[1]) + (tauY['U2'] * nodeList[node].U[2]) for nbor in nodeList[node].adj: sumY += (tauY['nborA'] * nodeList[nbor].A) nodeList[node].Y = np.random.binomial(1, expit(sumY)) return nodeList