Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)

Paste

Pasted as Python by Klaas ( 5 years ago )
class tile:
	def __init__(self,L,R):
		self.L=L
		self.R=R
	def getL(self):
		return(L)
	def getR(self):
		return(R)
	def rotate(self):
		tempL=self.L
		self.L=R
		self.R=tempL
class hand:
	def __init__(self,tilelist):
		self.tiles=tilelist
	def getTiles(self):
		return(self.tiles)
	def addTile(self,tile):
		temptiles=self.tiles.copy()
		temptiles.add(tile)
		return (hand(temptiles))
	def removeTile(self,Rtile):
		temptiles=self.tiles.copy()
		temptiles.remove(Rtile)
		return(hand(temptiles))
class board:
	def __init__(self,seq): #with seq= [L,R,U,D]
		self.seq=seq
	def placeTileL(self,tile):
		tempseq=self.seq
		L=tile.getL()
		if L==3:
			if len(self.seq[0])==0:
				tempseq[0]=[tile]
				return(board(tempseq))
			elif len(self.seq[1])==0:
				temspeq[1]=[tile]
				return(board(tempseq))
			elif len(self.seq[2])==0:
				temspeq[2]=[tile]
				return(board(tempseq))
			elif len(self.seq[3])==0:
				temspeq[3]=[tile]
				return(board(tempseq))
		it=0
		for s in self.seq:
			if s[-1][1]==L:
				s.append(tile)
				tempseq[i]=s
				return(board(tempseq))
			it+=1
	def placeTileR(self,tile):
		tempseq=self.seq
		R=tile.getR()
		if R==3:
			if len(self.seq[0])==0:
				tempseq[0]=[tile.rotate()]
				return(board(tempseq))
			elif len(self.seq[1])==0:
				temspeq[1]=[tiletile.rotate()]
				return(board(tempseq))
			elif len(self.seq[2])==0:
				temspeq[2]=[tiletile.rotate()]
				return(board(tempseq))
			elif len(self.seq[3])==0:
				temspeq[3]=[tiletile.rotate()]
				return(board(tempseq))
		it=0
		for s in self.seq:
			if s[-1][1]==R:
				s.append(tile.rotate())
				tempseq[i]=s
				return(board(tempseq))
			it+=1



def newGame():
	tilestodivide=[]
	for i in range(1,7):
		for j in range(i+1):
			tilestodivide.append(tile(i,j))
	print(tilestodivide)
	rand.shuffle(tilestodivide)
	return(tilestodivide[:13],tilestodivide[13:])

 

Revise this Paste

Your Name: Code Language: