| 
									
										
										
										
											2024-12-11 15:08:57 +08:00
										 |  |  | /* | 
					
						
							|  |  |  | 文件名:TileObject.nut | 
					
						
							|  |  |  | 路径:User/Object/Map/TileObject.nut | 
					
						
							|  |  |  | 创建日期:2024-11-28	23:17 | 
					
						
							|  |  |  | 文件用途:地板类 | 
					
						
							|  |  |  | */ | 
					
						
							|  |  |  | class Tile extends CL_SpriteObject { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     m_data = null; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function InitData(path) { | 
					
						
							|  |  |  |         m_data = ScriptData.GetFileData(path, function(DataTable, Data) { | 
					
						
							| 
									
										
										
										
											2025-01-02 19:19:36 +08:00
										 |  |  |             DataTable.pos <- 0; | 
					
						
							| 
									
										
										
										
											2024-12-11 15:08:57 +08:00
										 |  |  |             while (!Data.Eof()) { | 
					
						
							|  |  |  |                 local Pack = Data.Get(); | 
					
						
							|  |  |  |                 if (Pack == "[IMAGE]") { | 
					
						
							|  |  |  |                     local PathBuf = Data.Get().tolower(); | 
					
						
							|  |  |  |                     if (PathBuf.len() > 0) { | 
					
						
							|  |  |  |                         DataTable.path <- "sprite/" + PathBuf; | 
					
						
							|  |  |  |                         DataTable.idx <- Data.Get(); | 
					
						
							|  |  |  |                     } | 
					
						
							|  |  |  |                 } else if (Pack == "[img pos]") { | 
					
						
							|  |  |  |                     DataTable.pos <- Data.Get(); | 
					
						
							|  |  |  |                 } else if (Pack == "[pass type]") { | 
					
						
							|  |  |  |                     DataTable.pass_type <- []; | 
					
						
							|  |  |  |                     while (!Data.Eof()) { | 
					
						
							|  |  |  |                         DataTable.pass_type.push(Data.Get()); | 
					
						
							|  |  |  |                     } | 
					
						
							|  |  |  |                 } | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         }); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     constructor(arg) { | 
					
						
							|  |  |  |         if (typeof arg == "integer") { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         } else if (typeof arg == "string") { | 
					
						
							|  |  |  |             InitData(arg); | 
					
						
							|  |  |  |             if ("path" in m_data) | 
					
						
							|  |  |  |                 base.constructor(m_data.path, m_data.idx); | 
					
						
							|  |  |  |             else { | 
					
						
							|  |  |  |                 base.constructor("sprite/character/common/circlecooltime.img", 27); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2025-01-02 19:19:36 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |     //设置坐标 | 
					
						
							|  |  |  |     function SetPosition(Value, ...) { | 
					
						
							|  |  |  |         if (vargv.len() == 0) { | 
					
						
							|  |  |  |             Value.y += m_data.pos; | 
					
						
							|  |  |  |             X = Value.x; | 
					
						
							|  |  |  |             Y = Value.y; | 
					
						
							|  |  |  |             BaseObject_SetPosition(this.C_Object, Value); | 
					
						
							|  |  |  |         } else if (vargv.len() == 1) { | 
					
						
							|  |  |  |             vargv[0] += m_data.pos; | 
					
						
							|  |  |  |             X = Value; | 
					
						
							|  |  |  |             Y = vargv[0]; | 
					
						
							|  |  |  |             BaseObject_SetPosition(this.C_Object, Value, vargv[0]); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2024-12-11 15:08:57 +08:00
										 |  |  | } |