I have worked out most of the bugs in my game so far.. this I can't seem to figure out, frankly I don't even know if it is possible. I'm using KeyDown for my inputs and I would like to make it so if the attack key is held down it will only count as being pressed once... otherwise my game is going to be rather easy.. all you have to do is hold the attack key. Does anyone know of a way to stop this?
Here's my game so far:
Turing: |
% --------------------------
%|Wanderer of the Dark Realm|
%| By Spencer Sherman |
% --------------------------
var font : int
var font2 : int
var keys : array char of boolean
% ----------------------------------
%|Player Move/Attack/Health Position|
% ----------------------------------
var plmov : int := 0
var platt : int := 0
var plhel : int := 0
var plswu : boolean := false
var plswd : boolean := false
var plswr : boolean := false
var plswl : boolean := false
% -----------------------
%|Player X/Y/Height/Width|
% -----------------------
var plx := 400
var ply := 200
var plx2 := 420
var ply2 := 220
% -----------------------
%|Map 1 Goblin 1 Variable|
% -----------------------
var gobx := 5
var goby := 5
var gobx2 := 5
var goby2 := 5
var gobhx := 1
var gobhy := 766
var gobhx2 := 250
var gobhy2 := 756
% -------------
%|Screen Config|
% -------------
setscreen ("offscreenonly")
setscreen ("graphics:1024;768")
% -----
%|Fonts|
% -----
font := Font.New ("arial:10:bold,italic")
font2 := Font.New ("arial:10:bold")
% -----
%|Music|
% -----
process Background
loop
Music.PlayFile ("Background.mp3")
end loop
end Background
% -------------------
%|Draw Map 1 Goblin 1|
% -------------------
procedure DrawMap1Goblin1
% ----
%|Name|
% ----
Draw.Text ("Goblin 1", gobx + 27, goby + 222, font, white)
% ----
%|Body|
% ----
Draw.FillBox (gobx + 45, goby + 195, gobx2 + 65, goby2 + 210, brown)
Draw.Box (gobx + 45, goby + 195, gobx2 + 65, goby2 + 210, black)
% ----
%|Head|
% ----
Draw.FillBox (gobx + 50, goby + 200, gobx2 + 60, goby2 + 210, green)
Draw.Box (gobx + 50, goby + 200, gobx2 + 60, goby2 + 210, black)
% --------
%|Left Ear|
% --------
Draw.FillBox (gobx + 45, goby + 205, gobx2 + 50, goby2 + 215, green)
Draw.Box (gobx + 45, goby + 205, gobx2 + 50, goby2 + 215, black)
% ---------
%|Right Ear|
% ---------
Draw.FillBox (gobx + 60, goby + 205, gobx2 + 65, goby2 + 215, green)
Draw.Box (gobx + 60, goby + 205, gobx2 + 65, goby2 + 215, black)
% --------
%|Left Arm|
% --------
Draw.FillBox (gobx + 40, goby + 190, gobx2 + 45, goby2 + 205, green)
Draw.Box (gobx + 40, goby + 190, gobx2 + 45, goby2 + 205, black)
Draw.FillBox (gobx + 40, goby + 190, gobx2 + 45, goby2 + 195, brown)
Draw.Box (gobx + 40, goby + 190, gobx2 + 45, goby2 + 195, black)
Draw.Line (gobx + 43, goby + 190, gobx2 + 43, goby2 + 193, black)
% ---------
%|Right Arm|
% ---------
Draw.FillBox (gobx + 65, goby + 190, gobx2 + 70, goby2 + 205, green)
Draw.Box (gobx + 65, goby + 190, gobx2 + 70, goby2 + 205, black)
Draw.FillBox (gobx + 65, goby + 190, gobx2 + 70, goby2 + 195, brown)
Draw.Box (gobx + 65, goby + 190, gobx2 + 70, goby2 + 195, black)
Draw.Line (gobx + 67, goby + 190, gobx2 + 67, goby2 + 193, black)
% ---------
%|Left Foot|
% ---------
Draw.FillBox (gobx + 48, goby + 190, gobx2 + 53, goby2 + 195, green)
Draw.Box (gobx + 48, goby + 190, gobx2 + 53, goby2 + 195, black)
% ----------
%|Right Foot|
% ----------
Draw.FillBox (gobx + 58, goby + 190, gobx2 + 63, goby2 + 195, green)
Draw.Box (gobx + 58, goby + 190, gobx2 + 63, goby2 + 195, black)
end DrawMap1Goblin1
% ------------------------------
%|Map 1 Goblin 1 Health Bar Full|
% ------------------------------
procedure DrawMap1Goblin1Health
Draw.FillBox (gobhx, gobhy, gobhx2, gobhy2, 12)
Draw.Box (gobhx, gobhy, 250, gobhy2, white)
end DrawMap1Goblin1Health
% -----------------
%|Player Procedures|
% -----------------
% --------------
%|Draw Player Up|
% --------------
procedure PlayerMoveUp
% ----
%|Helm|
% ----
Draw.FillBox (plx, ply, plx2, ply2, grey)
Draw.Box (plx, ply, plx2, ply2, black)
% ---------
%|Left Foot|
% ---------
Draw.FillBox (plx + 4, ply + 20, plx2 - 11, ply2 + 5, grey)
Draw.Box (plx + 4, ply + 20, plx2 - 11, ply2 + 5, black)
% ---------
%|Right Foot|
% ---------
Draw.FillBox (plx + 11, ply + 20, plx2 - 4, ply2 + 5, grey)
Draw.Box (plx + 11, ply + 20, plx2 - 4, ply2 + 5, black)
% --------
%|Left Arm|
% --------
Draw.FillBox (plx - 5, ply + 2, plx2 - 20, ply2 + 10, grey)
Draw.Box (plx - 5, ply + 2, plx2 - 20, ply2 + 10, black)
Draw.Line (plx - 5, ply + 25, plx2 - 20, ply2 + 5, black)
% ---------
%|Right Arm|
% ---------
Draw.FillBox (plx + 20, ply + 2, plx2 + 5, ply2 + 10, grey)
Draw.Box (plx + 20, ply + 2, plx2 + 5, ply2 + 10, black)
Draw.Line (plx + 20, ply + 25, plx2 + 5, ply2 + 5, black)
% --------------
%|Helm Left Horn|
% --------------
Draw.Line (plx, ply, plx2 - 20, ply2, black)
Draw.FillBox (plx - 10, ply + 6, plx2 - 25, ply2 - 6, brown)
Draw.Box (plx - 10, ply + 6, plx2 - 25, ply2 - 6, black)
Draw.FillBox (plx - 13, ply + 8, plx2 - 30, ply2 - 8, brown)
Draw.Box (plx - 13, ply + 8, plx2 - 30, ply2 - 8, black)
Draw.Box (plx, ply, plx2, ply2, black)
Draw.FillBox (plx - 5, ply + 5, plx2 - 15, ply2 - 5, brown)
Draw.Box (plx - 5, ply + 5, plx2 - 15, ply2 - 5, black)
Draw.Line (plx, ply, plx2 - 20, ply2, black)
% ---------------
%|Helm Right Horn|
% ---------------
Draw.Line (plx + 20, ply, plx2, ply2, black)
Draw.FillBox (plx + 25, ply + 6, plx2 + 10, ply2 - 6, brown)
Draw.Box (plx + 25, ply + 6, plx2 + 10, ply2 - 6, black)
Draw.FillBox (plx + 30, ply + 8, plx2 + 13, ply2 - 8, brown)
Draw.Box (plx + 30, ply + 8, plx2 + 13, ply2 - 8, black)
Draw.Box (plx, ply, plx2, ply2, black)
Draw.FillBox (plx + 15, ply + 5, plx2 + 5, ply2 - 5, brown)
Draw.Box (plx + 15, ply + 5, plx2 + 5, ply2 - 5, black)
Draw.Line (plx + 20, ply, plx2, ply2, black)
end PlayerMoveUp
% ----------------
%|Draw Player Down|
% ----------------
procedure PlayerMoveDown
% ----
%|Helm|
% ----
Draw.FillBox (plx, ply, plx2, ply2, grey)
Draw.Box (plx, ply, plx2, ply2, black)
% ---------
%|Left Foot|
% ---------
Draw.FillBox (plx + 4, ply - 5, plx2 - 11, ply2 - 20, grey)
Draw.Box (plx + 4, ply - 5, plx2 - 11, ply2 - 20, black)
% ---------
%|Right Foot|
% ---------
Draw.FillBox (plx + 11, ply - 5, plx2 - 4, ply2 - 20, grey)
Draw.Box (plx + 11, ply - 5, plx2 - 4, ply2 - 20, black)
% --------
%|Left Arm|
% --------
Draw.FillBox (plx - 5, ply - 10, plx2 - 20, ply2 - 2, grey)
Draw.Box (plx - 5, ply - 10, plx2 - 20, ply2 - 2, black)
Draw.Line (plx - 5, ply - 5, plx2 - 20, ply2 - 25, black)
% ---------
%|Right Arm|
% ---------
Draw.FillBox (plx + 20, ply - 10, plx2 + 5, ply2 - 2, grey)
Draw.Box (plx + 20, ply - 10, plx2 + 5, ply2 - 2, black)
Draw.Line (plx + 20, ply - 5, plx2 + 5, ply2 - 25, black)
% --------------
%|Helm Left Horn|
% --------------
Draw.Line (plx, ply, plx2 - 20, ply2, black)
Draw.FillBox (plx - 10, ply + 6, plx2 - 25, ply2 - 6, brown)
Draw.Box (plx - 10, ply + 6, plx2 - 25, ply2 - 6, black)
Draw.FillBox (plx - 13, ply + 8, plx2 - 30, ply2 - 8, brown)
Draw.Box (plx - 13, ply + 8, plx2 - 30, ply2 - 8, black)
Draw.Box (plx, ply, plx2, ply2, black)
Draw.FillBox (plx - 5, ply + 5, plx2 - 15, ply2 - 5, brown)
Draw.Box (plx - 5, ply + 5, plx2 - 15, ply2 - 5, black)
Draw.Line (plx, ply, plx2 - 20, ply2, black)
% ---------------
%|Helm Right Horn|
% ---------------
Draw.Line (plx + 20, ply, plx2, ply2, black)
Draw.FillBox (plx + 25, ply + 6, plx2 + 10, ply2 - 6, brown)
Draw.Box (plx + 25, ply + 6, plx2 + 10, ply2 - 6, black)
Draw.FillBox (plx + 30, ply + 8, plx2 + 13, ply2 - 8, brown)
Draw.Box (plx + 30, ply + 8, plx2 + 13, ply2 - 8, black)
Draw.Box (plx, ply, plx2, ply2, black)
Draw.FillBox (plx + 15, ply + 5, plx2 + 5, ply2 - 5, brown)
Draw.Box (plx + 15, ply + 5, plx2 + 5, ply2 - 5, black)
Draw.Line (plx + 20, ply, plx2, ply2, black)
end PlayerMoveDown
% -----------------
%|Draw Player Right|
% -----------------
procedure PlayerMoveRight
% ----
%|Helm|
% ----
Draw.FillBox (plx, ply, plx2, ply2, grey)
Draw.Box (plx, ply, plx2, ply2, black)
% ---------
%|Left Foot|
% ---------
Draw.FillBox (plx + 20, ply + 4, plx2 + 5, ply2 - 11, grey)
Draw.Box (plx + 20, ply + 4, plx2 + 5, ply2 - 11, black)
% ---------
%|Right Foot|
% ---------
Draw.FillBox (plx + 20, ply + 11, plx2 + 5, ply2 - 4, grey)
Draw.Box (plx + 20, ply + 11, plx2 + 5, ply2 - 4, black)
% --------
%|Left Arm|
% --------
Draw.FillBox (plx + 2, ply + 20, plx2 + 10, ply2 + 5, grey)
Draw.Box (plx + 2, ply + 20, plx2 + 10, ply2 + 5, black)
Draw.Line (plx + 25, ply + 20, plx2 + 5, ply2 + 5, black)
% ---------
%|Right Arm|
% ---------
Draw.FillBox (plx + 2, ply - 5, plx2 + 10, ply2 - 20, grey)
Draw.Box (plx + 2, ply - 5, plx2 + 10, ply2 - 20, black)
Draw.Line (plx + 25, ply - 5, plx2 + 5, ply2 - 20, black)
% --------------
%|Helm Left Horn|
% --------------
Draw.Line (plx, ply, plx2, ply2 - 20, black)
Draw.FillBox (plx + 6, ply - 10, plx2 - 6, ply2 - 25, brown)
Draw.Box (plx + 6, ply - 10, plx2 - 6, ply2 - 25, black)
Draw.FillBox (plx + 8, ply - 13, plx2 - 8, ply2 - 30, brown)
Draw.Box (plx + 8, ply - 13, plx2 - 8, ply2 - 30, black)
Draw.Box (plx, ply, plx2, ply2, black)
Draw.FillBox (plx + 5, ply - 5, plx2 - 5, ply2 - 15, brown)
Draw.Box (plx + 5, ply - 5, plx2 - 5, ply2 - 15, black)
Draw.Line (plx, ply, plx2, ply2 - 20, black)
% ---------------
%|Helm Right Horn|
% ---------------
Draw.Line (plx, ply + 20, plx2, ply2, black)
Draw.FillBox (plx + 6, ply + 25, plx2 - 6, ply2 + 10, brown)
Draw.Box (plx + 6, ply + 25, plx2 - 6, ply2 + 10, black)
Draw.FillBox (plx + 8, ply + 30, plx2 - 8, ply2 + 13, brown)
Draw.Box (plx + 8, ply + 30, plx2 - 8, ply2 + 13, black)
Draw.Box (plx, ply, plx2, ply2, black)
Draw.FillBox (plx + 5, ply + 15, plx2 - 5, ply2 + 5, brown)
Draw.Box (plx + 5, ply + 15, plx2 - 5, ply2 + 5, black)
Draw.Line (plx, ply + 20, plx2, ply2, black)
end PlayerMoveRight
% ----------------
%|Draw Player Left|
% ----------------
procedure PlayerMoveLeft
% ----
%|Helm|
% ----
Draw.FillBox (plx, ply, plx2, ply2, grey)
Draw.Box (plx, ply, plx2, ply2, black)
% ----------
%|Right Foot|
% ----------
Draw.FillBox (plx - 5, ply + 11, plx2 - 20, ply2 - 4, grey)
Draw.Box (plx - 5, ply + 11, plx2 - 20, ply2 - 4, black)
% ---------
%|Left Foot|
% ---------
Draw.FillBox (plx - 5, ply + 4, plx2 - 20, ply2 - 11, grey)
Draw.Box (plx - 5, ply + 4, plx2 - 20, ply2 - 11, black)
% ---------
%|Right Arm|
% ---------
Draw.FillBox (plx - 10, ply - 5, plx2 - 2, ply2 - 20, grey)
Draw.Box (plx - 10, ply - 5, plx2 - 2, ply2 - 20, black)
Draw.Line (plx - 5, ply - 5, plx2 - 25, ply2 - 20, black)
% ---------
%|Left Arm|
% ---------
Draw.FillBox (plx - 10, ply + 20, plx2 - 2, ply2 + 5, grey)
Draw.Box (plx - 10, ply + 20, plx2 - 2, ply2 + 5, black)
Draw.Line (plx - 5, ply + 20, plx2 - 25, ply2 + 5, black)
% ---------------
%|Helm Right Horn|
% ---------------
Draw.Line (plx, ply, plx2, ply2 - 20, black)
Draw.FillBox (plx + 6, ply - 10, plx2 - 6, ply2 - 25, brown)
Draw.Box (plx + 6, ply - 10, plx2 - 6, ply2 - 25, black)
Draw.FillBox (plx + 8, ply - 13, plx2 - 8, ply2 - 30, brown)
Draw.Box (plx + 8, ply - 13, plx2 - 8, ply2 - 30, black)
Draw.Box (plx, ply, plx2, ply2, black)
Draw.FillBox (plx + 5, ply - 5, plx2 - 5, ply2 - 15, brown)
Draw.Box (plx + 5, ply - 5, plx2 - 5, ply2 - 15, black)
Draw.Line (plx, ply, plx2, ply2 - 20, black)
% ---------------
%|Left Right Horn|
% ---------------
Draw.Line (plx, ply + 20, plx2, ply2, black)
Draw.FillBox (plx + 6, ply + 25, plx2 - 6, ply2 + 10, brown)
Draw.Box (plx + 6, ply + 25, plx2 - 6, ply2 + 10, black)
Draw.FillBox (plx + 8, ply + 30, plx2 - 8, ply2 + 13, brown)
Draw.Box (plx + 8, ply + 30, plx2 - 8, ply2 + 13, black)
Draw.Box (plx, ply, plx2, ply2, black)
Draw.FillBox (plx + 5, ply + 15, plx2 - 5, ply2 + 5, brown)
Draw.Box (plx + 5, ply + 15, plx2 - 5, ply2 + 5, black)
Draw.Line (plx, ply + 20, plx2, ply2, black)
end PlayerMoveLeft
%----------------------
%|Draw Player Attack Up|
% ---------------------
procedure PlayerAttackUp
if keys ('a') then
plswu := true
% -----
%|Sword|
% -----
Draw.FillBox (plx + 20, ply + 40, plx2 + 5, ply2 + 55, grey)
Draw.Box (plx + 20, ply + 40, plx2 + 5, ply2 + 55, black)
Draw.Line (plx + 22, ply + 40, plx2 + 2, ply2 + 55, black)
Draw.Line (plx + 23, ply + 40, plx2 + 3, ply2 + 55, black)
% ------------
%|Sword Handle|
% ------------
Draw.FillBox (plx + 20, ply + 30, plx2 + 5, ply2 + 15, brown)
Draw.Box (plx + 20, ply + 30, plx2 + 5, ply2 + 15, black)
Draw.FillBox (plx + 15, ply + 35, plx2 + 10, ply2 + 20, brown)
Draw.Box (plx + 15, ply + 35, plx2 + 10, ply2 + 20, black)
Draw.FillBox (plx + 20, ply + 35, plx2 + 5, ply2 + 20, yellow)
Draw.Box (plx + 20, ply + 35, plx2 + 5, ply2 + 20, black)
else
plswu := false
end if
end PlayerAttackUp
% -----------------------
%|Draw Player Attack Down|
% -----------------------
procedure PlayerAttackDown
if keys ('a') then
plswd := true
% -----
%|Sword|
% -----
Draw.FillBox (plx - 5, ply - 55, plx2 - 20, ply2 - 40, grey)
Draw.Box (plx - 5, ply - 55, plx2 - 20, ply2 - 40, black)
Draw.Line (plx - 3, ply - 55, plx2 - 23, ply2 - 40, black)
Draw.Line (plx - 2, ply - 55, plx2 - 22, ply2 - 40, black)
% ------------
%|Sword Handle|
% ------------
Draw.FillBox (plx - 5, ply - 15, plx2 - 20, ply2 - 30, brown)
Draw.Box (plx - 5, ply - 15, plx2 - 20, ply2 - 30, black)
Draw.FillBox (plx - 10, ply - 20, plx2 - 15, ply2 - 35, brown)
Draw.Box (plx - 10, ply - 20, plx2 - 15, ply2 - 35, black)
Draw.FillBox (plx - 5, ply - 20, plx2 - 20, ply2 - 35, yellow)
Draw.Box (plx - 5, ply - 20, plx2 - 20, ply2 - 35, black)
else
plswd := false
end if
end PlayerAttackDown
% ------------------------
%|Draw Player Attack Right|
% ------------------------
procedure PlayerAttackRight
if keys ('a') then
plswr := true
% -----
%|Sword|
% -----
Draw.FillBox (plx + 40, ply - 5, plx2 + 55, ply2 - 20, grey)
Draw.Box (plx + 40, ply - 5, plx2 + 55, ply2 - 20, black)
Draw.Line (plx + 40, ply - 2, plx2 + 55, ply2 - 23, black)
Draw.Line (plx + 40, ply - 3, plx2 + 55, ply2 - 22, black)
% ------------
%|Sword Handle|
% ------------
Draw.FillBox (plx + 30, ply - 5, plx2 + 15, ply2 - 20, brown)
Draw.Box (plx + 30, ply - 5, plx2 + 15, ply2 - 20, black)
Draw.FillBox (plx + 35, ply - 10, plx2 + 20, ply2 - 15, brown)
Draw.Box (plx + 35, ply - 10, plx2 + 20, ply2 - 15, black)
Draw.FillBox (plx + 35, ply - 5, plx2 + 20, ply2 - 20, yellow)
Draw.Box (plx + 35, ply - 5, plx2 + 20, ply2 - 20, black)
else
plswr := false
end if
end PlayerAttackRight
% -----------------------
%|Draw Player Attack Left|
% -----------------------
procedure PlayerAttackLeft
if keys ('a') then
plswl := true
% -----
%|Sword|
% -----
Draw.FillBox (plx - 55, ply + 20, plx2 - 40, ply2 + 5, grey)
Draw.Box (plx - 55, ply + 20, plx2 - 40, ply2 + 5, black)
Draw.Line (plx - 55, ply + 23, plx2 - 40, ply2 + 2, black)
Draw.Line (plx - 55, ply + 22, plx2 - 40, ply2 + 3, black)
% ------------
%|Sword Handle|
% ------------
Draw.FillBox (plx - 15, ply + 20, plx2 - 30, ply2 + 5, brown)
Draw.Box (plx - 15, ply + 20, plx2 - 30, ply2 + 5, black)
Draw.FillBox (plx - 20, ply + 15, plx2 - 35, ply2 + 10, brown)
Draw.Box (plx - 20, ply + 15, plx2 - 35, ply2 + 10, black)
Draw.FillBox (plx - 20, ply + 20, plx2 - 35, ply2 + 5, yellow)
Draw.Box (plx - 20, ply + 20, plx2 - 35, ply2 + 5, black)
else
plswl := false
end if
end PlayerAttackLeft
% --------------
%|Map Procedures|
% --------------
% ----------
%|Draw Map 1|
% ----------
procedure DrawMap1
% -----
%}Floor|
% -----
colorback (25)
% ----
%|Exit|
% ----
Draw.FillBox (999, 625, 1024, 700, brown)
Draw.Box (999, 625, 1023, 700, black)
end DrawMap1
%fork Background
% ----------
%|Begin Game|
% ----------
loop
% ----------
%|Draw Map 1|
% ----------
DrawMap1
% ------------------
%|Draw Map 1 Enemies|
% ------------------
DrawMap1Goblin1
% -------------------------
%|Player VS. Map 1 Goblin 1|
% -------------------------
% ----------------
%|Player Attack Up|
% ----------------
if plx + 20 < gobx2 + 60 and plx2 + 5 > gobx + 50 and ply + 40 < goby2 + 210 and ply2 + 55 > goby + 200 and plswu = true then
gobhx2 := gobhx2 - 1
if gobhx2 = 0 then
Draw.FillOval (55, 200, 20, 20, red)
gobx := - 9999
goby := - 9999
gobx2 := - 9999
goby2 := - 9999
end if
elsif plx + 20 < gobx2 + 60 and plx2 + 5 > gobx + 50 and ply + 40 < goby2 + 210 and ply2 + 55 > goby + 200 and plswu = false then
end if
if gobx = - 9999 then
Draw.FillOval (60, 210, 20, 20, red)
end if
% ------------------
%|Player Attack Down|
% ------------------
if plx - 5 < gobx2 + 60 and plx2 - 20 > gobx + 50 and ply - 55 < goby2 + 210 and ply2 - 40 > goby + 200 and plswd = true then
gobhx2 := gobhx2 - 1
if gobhx2 = 0 then
Draw.FillOval (55, 200, 20, 20, red)
gobx := - 9999
goby := - 9999
gobx2 := - 9999
goby2 := - 9999
end if
elsif plx - 5 < gobx2 + 60 and plx2 - 20 > gobx + 50 and ply - 55 < goby2 + 210 and ply2 - 40 > goby + 200 and plswd = false then
end if
if gobx = - 9999 then
Draw.FillOval (60, 210, 20, 20, red)
end if
% -------------------
%|Player Attack Right|
% -------------------
if plx + 40 < gobx2 + 60 and plx2 + 55 > gobx + 50 and ply - 5 < goby2 + 210 and ply2 - 20 > goby + 200 and plswr = true then
gobhx2 := gobhx2 - 1
if gobhx2 = 0 then
Draw.FillOval (55, 200, 20, 20, red)
gobx := - 9999
goby := - 9999
gobx2 := - 9999
goby2 := - 9999
end if
elsif plx + 40 < gobx2 + 60 and plx2 + 55 > gobx + 50 and ply - 5 < goby2 + 210 and ply2 - 20 > goby + 200 and plswr = false then
end if
if gobx = - 9999 then
Draw.FillOval (60, 210, 20, 20, red)
end if
% ------------------
%|Player Attack Left|
% ------------------
if plx - 55 < gobx2 + 60 and plx2 - 40 > gobx + 50 and ply + 20 < goby2 + 210 and ply2 + 5 > goby + 200 and plswl = true then
gobhx2 := gobhx2 - 1
if gobhx2 = 0 then
Draw.FillOval (55, 200, 20, 20, red)
gobx := - 9999
goby := - 9999
gobx2 := - 9999
goby2 := - 9999
end if
elsif plx - 55 < gobx2 + 60 and plx2 - 40 > gobx + 50 and ply + 20 < goby2 + 210 and ply2 + 5 > goby + 200 and plswl = false then
end if
if gobx = - 9999 then
Draw.FillOval (60, 210, 20, 20, red)
end if
% ------------------------
%|Player Movement & Attack|
% ------------------------
Input.KeyDown (keys )
if keys (KEY_UP_ARROW) then
ply + = 1
ply2 + = 1
PlayerMoveUp
PlayerAttackUp
plmov := 0
platt := 0
end if
if plmov = 0 then
PlayerMoveUp
end if
if platt = 0 then
PlayerAttackUp
end if
if keys (KEY_DOWN_ARROW) then
ply - = 1
ply2 - = 1
PlayerMoveDown
PlayerAttackDown
plmov := 1
platt := 1
end if
if plmov = 1 then
PlayerMoveDown
end if
if platt = 1 then
PlayerAttackDown
end if
if keys (KEY_RIGHT_ARROW) then
plx + = 1
plx2 + = 1
PlayerMoveRight
PlayerAttackRight
plmov := 2
platt := 2
end if
if plmov = 2 then
PlayerMoveRight
end if
if platt = 2 then
PlayerAttackRight
end if
if keys (KEY_LEFT_ARROW) then
plx - = 1
plx2 - = 1
PlayerMoveLeft
PlayerAttackLeft
plmov := 3
platt := 3
end if
if plmov = 3 then
PlayerMoveLeft
end if
if platt = 3 then
PlayerAttackLeft
end if
% ----------------
%|Draw Status Bars|
% ----------------
Draw.FillBox (0, 718, 1024, 768, black)
Draw.FillBox (0, 0, 1024, 50, black)
DrawMap1Goblin1Health
Draw.Text ("Goblin 1", 100, 740, font, white)
View.Update
delay (10)
cls
end loop
|
|