mirror of
				https://github.com/godotengine/godot.git
				synced 2025-11-03 23:21:15 +00:00 
			
		
		
		
	
		
			
	
	
		
			51 lines
		
	
	
	
		
			821 B
		
	
	
	
		
			GDScript3
		
	
	
	
	
	
		
		
			
		
	
	
			51 lines
		
	
	
	
		
			821 B
		
	
	
	
		
			GDScript3
		
	
	
	
	
	
| 
								 | 
							
								enum Flags {
							 | 
						||
| 
								 | 
							
									FIRE = 1 << 1,
							 | 
						||
| 
								 | 
							
									ICE = 1 << 2,
							 | 
						||
| 
								 | 
							
									SLIPPERY = 1 << 3,
							 | 
						||
| 
								 | 
							
									STICKY = 1 << 4,
							 | 
						||
| 
								 | 
							
									NONSOLID = 1 << 5,
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									ALL = FIRE | ICE | SLIPPERY | STICKY | NONSOLID,
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func test():
							 | 
						||
| 
								 | 
							
									var flags = Flags.FIRE | Flags.SLIPPERY
							 | 
						||
| 
								 | 
							
									print(flags)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									flags = Flags.FIRE & Flags.SLIPPERY
							 | 
						||
| 
								 | 
							
									print(flags)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									flags = Flags.FIRE ^ Flags.SLIPPERY
							 | 
						||
| 
								 | 
							
									print(flags)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									flags = Flags.ALL & (Flags.FIRE | Flags.ICE)
							 | 
						||
| 
								 | 
							
									print(flags)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									flags = (Flags.ALL & Flags.FIRE) | Flags.ICE
							 | 
						||
| 
								 | 
							
									print(flags)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									flags = Flags.ALL & Flags.FIRE | Flags.ICE
							 | 
						||
| 
								 | 
							
									print(flags)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									# Enum value must be casted to an integer. Otherwise, a parser error is emitted.
							 | 
						||
| 
								 | 
							
									flags &= int(Flags.ICE)
							 | 
						||
| 
								 | 
							
									print(flags)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									flags ^= int(Flags.ICE)
							 | 
						||
| 
								 | 
							
									print(flags)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									flags |= int(Flags.STICKY | Flags.SLIPPERY)
							 | 
						||
| 
								 | 
							
									print(flags)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									print()
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									var num = 2 << 4
							 | 
						||
| 
								 | 
							
									print(num)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									num <<= 2
							 | 
						||
| 
								 | 
							
									print(num)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									num >>= 2
							 | 
						||
| 
								 | 
							
									print(num)
							 |