| 
									
										
										
										
											2024-09-16 17:05:26 +08:00
										 |  |  | /* | 
					
						
							|  |  |  | 文件名:PvfItemClass.nut | 
					
						
							|  |  |  | 路径:BaseClass/PvfClass/PvfItemClass.nut | 
					
						
							|  |  |  | 创建日期:2024-04-26	19:28 | 
					
						
							|  |  |  | 文件用途:PVF item数据 | 
					
						
							|  |  |  | */ | 
					
						
							|  |  |  | class PvfItem extends Base_C_Object { | 
					
						
							|  |  |  |     Attribute = null; | 
					
						
							|  |  |  |     constructor(CObject) { | 
					
						
							|  |  |  |         base.constructor(CObject); | 
					
						
							|  |  |  |         Attribute = Sq_Point2Blob(CObject, 600); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function Output() { | 
					
						
							|  |  |  |         local Str = "["; | 
					
						
							|  |  |  |         foreach(Value in Attribute) { | 
					
						
							|  |  |  |             Str = format("%s%02X", Str, Value); | 
					
						
							|  |  |  |             Str += ","; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         Str += "]"; | 
					
						
							|  |  |  |         print(Str); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //获取编号 | 
					
						
							|  |  |  |     function GetIndex() { | 
					
						
							|  |  |  |         Attribute.seek(1 * 4); | 
					
						
							|  |  |  |         return Attribute.readn('i'); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //获取可用等级 | 
					
						
							|  |  |  |     function GetUsableLevel() { | 
					
						
							|  |  |  |         Attribute.seek(18 * 4); | 
					
						
							|  |  |  |         return Attribute.readn('i'); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //获取稀有度 | 
					
						
							|  |  |  |     function GetRarity() { | 
					
						
							|  |  |  |         Attribute.seek(14 * 4); | 
					
						
							|  |  |  |         return Attribute.readn('i'); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //获取名字 | 
					
						
							|  |  |  |     function GetName() { | 
					
						
							|  |  |  |         return Sq_GetNameByIdFromPvf(GetIndex()); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //Public | 
					
						
							|  |  |  |     function GetNameById(Id) { | 
					
						
							|  |  |  |         return Sq_GetNameByIdFromPvf(Id); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |     //Public | 
					
						
							|  |  |  |     function GetPvfItemById(Idx) { | 
					
						
							|  |  |  |         local Ret = Sq_GetDataByIdFromPvf(Idx); | 
					
						
							|  |  |  |         if (Ret) { | 
					
						
							|  |  |  |             return PvfItem(Ret); | 
					
						
							|  |  |  |         } else return null; | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2024-10-02 21:00:21 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |     //Public 是否是魔法封印 | 
					
						
							|  |  |  |     function IsRandomOption() { | 
					
						
							|  |  |  |         return Sq_CallFunc(S_Ptr("0x8514E5E"), "int", ["pointer"], this.C_Object); | 
					
						
							| 
									
										
										
										
											2024-09-20 19:24:32 +08:00
										 |  |  |     } | 
					
						
							| 
									
										
										
										
											2024-10-02 21:00:21 +08:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | //获取穿戴等级 | 
					
						
							|  |  |  | function PvfItem::GetUsableLevel() { | 
					
						
							|  |  |  |     return Sq_CallFunc(S_Ptr("0x80F12EE"), "int", ["pointer"], this.C_Object); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | //是否为消耗品 | 
					
						
							|  |  |  | function PvfItem::IsStackable() { | 
					
						
							|  |  |  |     return Sq_CallFunc(S_Ptr("0x80f12fa"), "int", ["pointer"], this.C_Object); | 
					
						
							| 
									
										
										
										
											2024-09-16 17:05:26 +08:00
										 |  |  | } |