world.NormalColour

MUSHclient script function (Property)

Gets/sets the RGB colour for one of the 8 ANSI normal colours

Prototype

long NormalColour(short WhichColour);
void NormalColour(short WhichColour, long nNewValue);

Data type meanings

Description

You can use this property to get or set the RGB colours used for the 8 ANSI normal colours. You must specify *which* colour you want to get/set, in the range 1 to 8, as follows:

black = 1
red = 2
green = 3
yellow = 4
blue = 5
magenta = 6
cyan = 7
white = 8

If you are setting the colour you must specify an RGB value. Some pre-defined values are available in VBscript, see below.

Constant Value Description
-------------------------------
vbBlack &h00 Black
vbRed &hFF Red
vbGreen &hFF00 Green
vbYellow &hFFFF Yellow
vbBlue &hFF0000 Blue
vbMagenta &hFF00FF Magenta
vbCyan &hFFFF00 Cyan
vbWhite &hFFFFFF White

In JScript you will need to use the RGB values, for example Magenta would be: 0xFF00FF.

You should be cautious doing frequent colour changes, because what happens is that you are changing the *palette* colour. What this means in practice is that if you change (say) the white colour (colour 8) then when new text appears on the screen it will be drawn in the new colour, however existing text will stay the old colour *until* it is redrawn (eg. is covered by a dialog box). This may lead to patchy bits of different colour on the screen.

You can have different colours on the screen (at the same time) by using the 16 custom colours, but only 16 different colours can be visible at once.

You can force a redraw of the whole world's window(s) by using the "Redraw" method.

See also BoldColour.

VBscript example

world.note world.normalcolour (3)  
world.normalcolour (3) = vbGreen  
world.normalcolour (8) = &h303030 
world.redraw   ' redraw screen

Jscript example

world.note(world.normalcolour(3)); 
world.normalcolour (3) = 0xFF00;   
world.normalcolour (8) = 0x303030;  
world.redraw();  // redraw screen

PerlScript example

$world->Note($world->normalcolour(3)); 
$world->redraw   # redraw screen

Python example

world.note(world.normalcolour(3)) 
world.normalcolour (3) = 0xFF00   
world.normalcolour (8) = 0x303030  
world.redraw  # redraw screen

Lua example

Note (GetNormalColour (2))  
SetNormalColour (2, 254) 
Redraw()   -- redraw screen

Lua notes

Lua implements this as two functions:

GetNormalColour - gets the normal colour
SetNormalColour - sets the normal colour

Return value

This is a property. You can use it to find the current normal colour.

Related topic

Colour management

See also

FunctionDescription
BoldColourGets/sets the RGB colour for one of the 8 ANSI bold colours
RedrawSchedules a redraw for all windows for this world