The following kod support has been added for guild shields: (note, still
in it's young stage. Make note of wierd behavior). (Note2: 3rd person overlay
art does not yet exist).
- SYSTEM.KOD
- IsGuildShieldAvailable(color1,color2,shape) Returns FALSE if:
both color1 and color2 are grey color1 and color2 match another guild's
color, and color1 = color2 color1, color2 and shape match another guild's
stuff. otherwise return TRUE
- Guild shields were also added to the item templates. Therefore, 'dm
item coat of arms' will create a guild shield for you.
- GUILD.KOD
- Added three properties: piColor1, piColor2, piShield_shape
- Added three functions to access these:
- GetPrimaryGuildColor()
- GetSecondaryGuildColor()
- GetShieldShape()
- Added a function to see if a guild has these set. (Unset colors are
set to GRAY).
- Added a function to set these values
- SetGuildColors(color1,color2,shape) This will fail if you send
out of bounds colors.
- GUILSHLD.KOD
- Added function to see if guild has colors
- IsShieldColored() Returns FALSE if guild is Gray & Gray.
Otherwise TRUE
- ChangeGuildShieldColors(color1,color2,shape,override)
- Use this to change a guild shield to it's new values for color1, color2,
and shape.
- This will fail if the guild shield already has colors, or if you send
out-of-bounds colors.
- 'override' overrides the color check, good for testing.
- Constructor() Calls ChangeGuildShieldColors with default values,
grey & grey. These values CAN be overridden in the constructor.
- UTIL.KOD
- These functions are used for player clothes as well as guild shields.
- System (SYS) is built off of util, so call system to access these functions:
- EncodeTwoColorXLAT(color1,color2) Given two colors, what is
the 'xlat' (palette translation) the client needs?
- DecodePrimaryColor(XLAT) Given the XLAT, what's 'color1'?
- DecodeSecondaryColor(XLAT) Given the XLAT, what's 'color2'?
- BLAKSTON.KHD
- Constants for colors (referred to above as color1 and color2).
- Odd things will happen if you use values out of range.
- XLAT_TO_RED = 0x00
- XLAT_TO_SKIN1 = 0x01
- XLAT_TO_SKIN2 = 0x02
- XLAT_TO_SKIN4 = 0x03 %% note: skin3 uses skin4
- XLAT_TO_ORANGE = 0x04
- XLAT_TO_GREEN = 0x05
- XLAT_TO_BLUE = 0x06
- XLAT_TO_PURPLE = 0x07
- XLAT_TO_YELLOW = 0x08
- XLAT_TO_GRAY = 0x09
- XLAT_TO_SKY = 0x0A
- These are used to determine if a color is out of bounds.
- XLAT_LOW_VALUE = 0x00
- XLAT_HIGH_VALUE = 0x0A
- Constants for shield shapes (referred to above as 'shape'.)
- SHIELDSHAPE_SLASH = 1
- SHIELDSHAPE_HALF = 2
- SHIELDSHAPE_HORIZ = 3
- SHIELDSHAPE_CHECKER = 4
- SHIELDSHAPE_DEFAULT = 1 (same as slash)
- These are used to determine if a shape is out of bounds.
- SHIELDSHAPE_LOW = 1
- SHIELDSHAPE_HIGH = 4