Modul:Chessboard/Chess
Utseende
Moduldokumentasjon
[opprett]
local p = {}
function p.dims()
return 8, 8
end
function p.letters()
return {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'}
end
function p.image_board(size)
return string.format( '[[File:Chessboard480.svg|%dx%dpx|link=|class=notpageimage]]', 8 * size, 8 * size )
end
function p.image_square( pc, row, col, size )
local colornames = { l = 'hvit', d = 'svart', u = 'ukjent farge' }
local piecenames = {
p = 'bonde',
r = 'tårn',
n = 'springer',
b = 'løper',
q = 'dronning',
k = 'konge',
a = 'archbishop',
c = 'chancelor',
z = 'mester',
w = 'trollmann',
t = 'narr',
M = 'mann',
h = 'opp-ned bonde',
m = 'opp-ned tårn',
B = 'opp-ned løper',
N = 'opp-ned springer',
f = 'opp-ned konge',
g = 'opp-ned dronning',
e = 'elefant',
s = 'båt',
G = 'sjiraff',
U = 'enhjørning',
Z = 'sebra'
}
local symnames = {
xx = 'svart kryss',
ox = 'hvitt kryss',
xo = 'svart sirkel',
oo = 'hvit sirkel',
ul = 'opp-venstre-pil',
ua = 'opp-pil',
ur = 'opp-høyre-pil',
la = 'venstre-pil',
ra = 'høyre-pil',
dl = 'ned-venstre-pil',
da = 'ned-pil',
dr = 'ned-høyre-pil',
lr = 'venstre-høyre-pil',
ud = 'opp-ned-pil',
db = 'up-right and down-left arrow',
dw = 'up-left and down-right arrow',
x0 = 'null',
x1 = 'en',
x2 = 'to',
x3 = 'tre',
x4 = 'fire',
x5 = 'fem',
x6 = 'seks',
x7 = 'sju',
x8 = 'åtte',
x9 = 'ni',
}
local colchar = {'a','b','c','d','e','f','g','h'}
local color = mw.ustring.gsub( pc, '^.*(%w)(%w).*$', '%2' ) or ''
local piece = mw.ustring.gsub( pc, '^.*(%w)(%w).*$', '%1' ) or ''
local alt = colchar[col] .. row .. ' '
if colornames[color] and piecenames[piece] then
alt = alt .. colornames[color] .. ' ' .. piecenames[piece]
else
alt = alt .. ( symnames[piece .. color] or piece .. ' ' .. color )
end
return string.format( '[[File:Chess %s%st45.svg|%dx%dpx|alt=%s|%s|link=|class=notpageimage|top]]', piece, color, size, size, alt, alt )
end
return p