-
Notifications
You must be signed in to change notification settings - Fork 15
Wall
Contents
As default, walls only require 2 images: one facing right, and one facing left (this order is used for all images unless stated otherwise). With all of the flags off, the game just reuses the images for the other side.
The flags that change this image sequence are generally incompatible. Specifically, only one of
isAllowedOnSlope
, isAnimated
, and isDoor
should be true at the same time.
isAllowedOnSlope
adds 4 images of the sloped wall, as follows:
- 2 normal images
- 2 images with the far side sloped up
- 2 images with the near side sloped up
For both hasGlass
and isBanner
(which are incompatible with each other), the game indexes the images
as if isAllowedOnSlope
is true, and expects the glass images or the rear images to start after the sloped
images. If the wall isn't actually allowed on slopes, those sloped images can just be blank, since they
aren't used. The image sequence is as follows:
- 2 normal images
- 4 sloped images
- Repeat the last 6, with glass (if
hasGlass
) or for the other side (ifisBanner
)
isAnimated
gives the wall an 8-frame animation. That's 16 images in total, alternating right/left
through 8 frames.
If isDoor
is set, its sprite are split up into the part of the door that will appear behind a car passing
through it, followed by a sprite containing the part of the door that will appear in front of a car
passing through it.
The image sequence is as follows:
- Closed door (facing right and then left)
- Four frame animation of the door opening towards the side facing the camera
- Four frame animation of the door opening away from the side facing the camera.
There should be 36 separate images in total. (If isLongDoorAnimation
is set, those are 16 frame animations,
and there should be 132 images in total.)
- cursor :
enum (of string)
-
Cursor icon to use when placing this object
Must be one of:
"CURSOR_BLANK"
,"CURSOR_UP_ARROW"
,"CURSOR_UP_DOWN_ARROW"
,"CURSOR_HAND_POINT"
,"CURSOR_ZZZ"
,"CURSOR_DIAGONAL_ARROWS"
,"CURSOR_PICKER"
,"CURSOR_TREE_DOWN"
,"CURSOR_FOUNTAIN_DOWN"
,"CURSOR_STATUE_DOWN"
,"CURSOR_BENCH_DOWN"
,"CURSOR_CROSS_HAIR"
,"CURSOR_BIN_DOWN"
,"CURSOR_LAMPPOST_DOWN"
,"CURSOR_FENCE_DOWN"
,"CURSOR_FLOWER_DOWN"
,"CURSOR_PATH_DOWN"
,"CURSOR_DIG_DOWN"
,"CURSOR_WATER_DOWN"
,"CURSOR_HOUSE_DOWN"
,"CURSOR_VOLCANO_DOWN"
,"CURSOR_WALK_DOWN"
,"CURSOR_PAINT_DOWN"
,"CURSOR_ENTRANCE_DOWN"
,"CURSOR_HAND_OPEN"
,"CURSOR_HAND_CLOSED"
,"CURSOR_ARROW"
, - height :
integer
- Height of the object, where there are 8 units per height step (for reference, a "quarter" height wall is one step = 8 units high). Therefore this value is generally a multiple of eight.
- price :
integer
- The cost of building this object.
- sceneryGroup :
string
- OpenRCT2
id
of the primary scenery group this object should be included in. For walls, the main ones are"rct2.scenery_group.scgwalls"
and"rct2.scenery_group.scgfences"
- hasPrimaryColour :
boolean
- True for objects that have at least one remappable colors.
- hasSecondaryColour :
boolean
- True for objects that have two remappable colors;
hasPrimaryColour
must also be set. - hasTernaryColour :
boolean
- True for objects that have three remappable colors.
- isOpaque :
boolean
- This is currently named backwards. If true, guests will look through this wall when they are watching rides or photogenic scenery.
- scrollingMode :
integer
- If set and not equal to
0
, this wall is a sign with scrolling text on it, and this value sets the scrolling mode of it. - isAllowedOnSlope :
boolean
- If true, this wall can be placed on slopes. This requires four more images.
- hasGlass :
boolean
- True for walls that have glass elements. Requires a second set of images placed afterward for the glass itself. These images are just a mask and should be a flat color.
- isAnimated :
boolean
- True for walls that are animated. The only option is an 8-frame animation sequence (it plays at 0.5 frames/tick which is about 20 fps).
- isBanner :
boolean
- This flag should really be named
isTwoSided
. If true, it adds separate images for the rear side of the wall. This flag is set for the only scrolling sign (or banner) in vanilla RCT2, but it can be used with other types of wall too.
- isDoor :
boolean
- True for wall objects that are doors designed to be placed on certain tracked rides.
- isLongDoorAnimation :
boolean
- For wall objects that are doors (
isDoor
is true), if true, they will use a 16 frame instead of a 4 frame opening animation. No existing objects use this. - doorSound :
integer
- For wall objects that are doors (
isDoor
is true), this number determines which sound plays when it opens/closes. Currently the only options are1
for the normal door sound or2
for the portcullis sound.
rct2.scenery_wall.wc16
(Fence)
"properties": {
"isOpaque": true,
"isAllowedOnSlope": true,
"height": 2,
"price": 40,
"sceneryGroup": "rct2.scenery_group.scgfence"
}
rct2.scenery_wall.wgw2
(Glass Wall)
"properties": {
"hasPrimaryColour": true,
"hasSecondaryColour": true,
"hasGlass": true,
"isOpaque": true,
"isAllowedOnSlope": true,
"height": 2,
"price": 90,
"sceneryGroup": "rct2.scenery_group.scgfence"
}
rct2.scenery_wall.wallsign
(Scrolling Sign)
"properties": {
"isBanner": true,
"hasPrimaryColour": true,
"hasSecondaryColour": true,
"height": 2,
"price": 120,
"scrollingMode": 34
}