mirror of
https://github.com/Rogiel/l2jserver2
synced 2025-12-05 23:22:47 +00:00
207 lines
6.8 KiB
XML
207 lines
6.8 KiB
XML
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
<xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
|
<xs:element name="npc" type="npcTemplate" />
|
|
|
|
<xs:complexType name="npcTemplate">
|
|
<xs:sequence>
|
|
<xs:element name="info" type="npcInformationMetadata"
|
|
minOccurs="0" />
|
|
<xs:element name="ai" type="aiMetadata" minOccurs="0" />
|
|
<xs:element name="teleporter" type="teleporterMetadata"
|
|
minOccurs="0" />
|
|
<xs:element name="talk" type="talkMetadata" minOccurs="0" />
|
|
<xs:element name="droplist" minOccurs="0">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:element name="item" type="dropItemMetadata"
|
|
minOccurs="0" maxOccurs="unbounded" />
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
<xs:attribute name="id" type="xs:int" use="required" />
|
|
<xs:attribute name="type" type="xs:string" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="npcInformationMetadata">
|
|
<xs:sequence>
|
|
<xs:element name="name" type="npcNameMetadata" minOccurs="0" />
|
|
<xs:element name="title" type="npcTitleMetadata"
|
|
minOccurs="0" />
|
|
<xs:element name="level" type="xs:int" />
|
|
<xs:element name="sex" type="actorSex" minOccurs="0" />
|
|
<xs:element name="stats" type="npcStatsMetadata"
|
|
minOccurs="0" />
|
|
<xs:element name="experience" type="xs:long" />
|
|
<xs:element name="sp" type="xs:int" />
|
|
<xs:element name="item" type="itemMetadata" minOccurs="0" />
|
|
<xs:element name="collision" type="collisionMetadata"
|
|
minOccurs="0" />
|
|
</xs:sequence>
|
|
<xs:attribute name="attackable" type="xs:boolean" use="required" />
|
|
<xs:attribute name="targetable" type="xs:boolean" use="required" />
|
|
<xs:attribute name="aggressive" type="xs:boolean" use="required" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="npcNameMetadata">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:string">
|
|
<xs:attribute name="send" type="xs:boolean" use="required" />
|
|
<xs:attribute name="display" type="xs:boolean" use="required" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="npcTitleMetadata">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:string">
|
|
<xs:attribute name="send" type="xs:boolean" use="required" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="npcStatsMetadata">
|
|
<xs:sequence>
|
|
<xs:element name="hp" type="stat" minOccurs="0" />
|
|
<xs:element name="mp" type="stat" minOccurs="0" />
|
|
<xs:element name="attack" type="attackMetadata" minOccurs="0" />
|
|
<xs:element name="defense" type="defenseMetadata"
|
|
minOccurs="0" />
|
|
<xs:element name="move" type="moveMetadata" minOccurs="0" />
|
|
<xs:element name="base" type="baseMetadata" minOccurs="0" />
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="stat">
|
|
<xs:sequence />
|
|
<xs:attribute name="max" type="xs:double" use="required" />
|
|
<xs:attribute name="regen" type="xs:double" use="required" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="attackMetadata">
|
|
<xs:sequence>
|
|
<xs:element name="physical" type="attackValueMetadata"
|
|
minOccurs="0" />
|
|
<xs:element name="magical" type="attackValueMetadata"
|
|
minOccurs="0" />
|
|
</xs:sequence>
|
|
<xs:attribute name="range" type="xs:int" use="required" />
|
|
<xs:attribute name="evasion" type="xs:int" use="required" />
|
|
<xs:attribute name="critical" type="xs:int" use="required" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="attackValueMetadata">
|
|
<xs:sequence />
|
|
<xs:attribute name="damage" type="xs:double" use="required" />
|
|
<xs:attribute name="speed" type="xs:double" use="required" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="defenseMetadata">
|
|
<xs:sequence>
|
|
<xs:element name="physical" type="defenseValueMetadata"
|
|
minOccurs="0" />
|
|
<xs:element name="magical" type="defenseValueMetadata"
|
|
minOccurs="0" />
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="defenseValueMetadata">
|
|
<xs:sequence />
|
|
<xs:attribute name="value" type="xs:double" use="required" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="moveMetadata">
|
|
<xs:sequence />
|
|
<xs:attribute name="run" type="xs:double" use="required" />
|
|
<xs:attribute name="walk" type="xs:double" use="required" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="baseMetadata">
|
|
<xs:sequence />
|
|
<xs:attribute name="int" type="xs:int" use="required" />
|
|
<xs:attribute name="str" type="xs:int" use="required" />
|
|
<xs:attribute name="con" type="xs:int" use="required" />
|
|
<xs:attribute name="men" type="xs:int" use="required" />
|
|
<xs:attribute name="dex" type="xs:int" use="required" />
|
|
<xs:attribute name="wit" type="xs:int" use="required" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="itemMetadata">
|
|
<xs:sequence />
|
|
<xs:attribute name="righthand" type="xs:int" />
|
|
<xs:attribute name="lefthand" type="xs:int" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="collisionMetadata">
|
|
<xs:sequence />
|
|
<xs:attribute name="radius" type="xs:double" use="required" />
|
|
<xs:attribute name="heigth" type="xs:double" use="required" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="aiMetadata">
|
|
<xs:sequence />
|
|
<xs:attribute name="script" type="xs:string" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="teleporterMetadata">
|
|
<xs:sequence>
|
|
<xs:element name="teleport" type="teleporterTeleportMetadata"
|
|
minOccurs="0" maxOccurs="unbounded" />
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="teleporterTeleportMetadata">
|
|
<xs:sequence>
|
|
<xs:element name="region" type="teleporterRegionMetadata"
|
|
minOccurs="0" maxOccurs="unbounded" />
|
|
</xs:sequence>
|
|
<xs:attribute name="id" type="xs:string" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="teleporterRegionMetadata">
|
|
<xs:sequence />
|
|
<xs:attribute name="id" type="xs:string" />
|
|
<xs:attribute name="price" type="xs:int" use="required" />
|
|
<xs:attribute name="item" type="xs:int" use="required" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="talkMetadata">
|
|
<xs:sequence>
|
|
<xs:element name="chat" type="chatMetadata" minOccurs="0"
|
|
maxOccurs="unbounded" />
|
|
</xs:sequence>
|
|
<xs:attribute name="default" type="xs:string" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="chatMetadata">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:string">
|
|
<xs:attribute name="id" type="xs:string" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="dropItemMetadata">
|
|
<xs:sequence />
|
|
<xs:attribute name="id" type="xs:int" />
|
|
<xs:attribute name="min" type="xs:int" use="required" />
|
|
<xs:attribute name="max" type="xs:int" use="required" />
|
|
<xs:attribute name="category" type="dropCategory" />
|
|
<xs:attribute name="chance" type="xs:int" use="required" />
|
|
</xs:complexType>
|
|
|
|
<xs:simpleType name="actorSex">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="MALE" />
|
|
<xs:enumeration value="FEMALE" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="dropCategory">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="KILL" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
</xs:schema>
|
|
|