G'day ScirptingHelpers!
Today I started working on a small chess AI. I have some ideas on it, so this isn't the question. I got stuck on the most basic part of the game: the board. Also the board is a frame.
I managed to place all the white pawns, rooks and other, but I don't think it is the most efficient way to do that.
There's my code so far:
local Nr = 0
local Images = {["King"] = "rbxassetid://5167408759", ["Rook"] = "rbxassetid://5167405525", ["Pawn"] = "rbxassetid://9067950310", ["Rook2"] = "rbxassetid://5167389475", ["King2"] = "rbxassetid://5167417298", ["Bishop"] = "rbxassetid://5167407683", ["Bishop2"] = "rbxassetid://5167391404", ["Knight"] = "rbxassetid://5167412180", ["Kinght2"] = "rbxassetid://5167419521", ["Pawn2"] = "rbxassetid://5167319726", ["Queen"] = "rbxassetid://5167410573", ["Queen2"] = "rbxassetid://5167418573"}
function make_checkerboard()
local d = 4
for i=0,7,1 do
for j=0,7,1 do
Nr += 1
local p = Instance.new("ImageButton", script.Parent.Board)
p.Name = Nr
p.BackgroundColor3 = Color3.new(0,0,0)
if Nr > 8 and Nr < 17 then
p.Image = Images["Pawn"]
local FirstUse = Instance.new("BoolValue", p)
FirstUse.Value = true
elseif Nr == 4 then
p.Image = Images["King"]
elseif Nr == 5 then
-- p.Text = "Queen"
elseif Nr == 1 or Nr == 8 then
p.Image = Images["Rook"]
elseif Nr == 2 or Nr == 7 then
-- p.Text = "Knight"
elseif Nr == 3 or Nr == 6 then
p.Image = Images["Bishop"]
end
if (i+j)%2==0 then
p.BackgroundColor3 = Color3.new(1,1,1)
end
end
end
end
make_checkerboard()
Bonus question: How would movement for a piece work? For pawn I was thinking about calculating the front square. Thank you!
