'Find the Gold! by SierraKen
'October 24, 2020
'Thanks for the great mapping code by FellipeHeitor and help from B+!
'Additions:
'Body, Arms, and Legs. Levels and 20 gold per level. Larger land area sizes. Lakes and Trees. 20 Level limit.
'Changed PAINT to CLS , _RGB32(0,200,0) which greatly improves the loading speed.
'Added 4 times the amount of trees and made 3 levels of mountains.
'Added random creeks. Added twice the lakes with random shapes.
'Changed screen size to 800 x 600 to be compatible with all players.
'Added 100 seconds to level time, to 400 for level 1.
'Slowed player speed from 10 to 8.
'Changed to a happier sound when getting gold.
'Changed color after you get the gold from brown to green.
'Added WASD keys to move player along with arrow keys.
'Removed the square mountains and made more realistic hills.
'Put the lakes on the ground, before everything else.
'Made trees look better.
'Removed creeks.
'Fixed Title Bar.
'Changed colors of hills.
start:
score = 0
level = 1
start2:
'Lakes
'Hills
hillcolors:
blue = blue + .05
c3
= INT(RND * 50) + 20 + blue
c2 = c3 * 2
c1 = c3 * 3
yy = yy + 4
hh = hh + .025
cc1 = c1 + hh
cc2 = c2 + hh
cc3 = c3 + hh
hh = 0
blue = 0
yy = 0
'Trees
LINE (tx
, ty
)-(tx
, ty
+ tsz
+ 5), _RGB32(188, 127, 127) trim = trim + 2
LINE (tx
, branches
)-(tx
- trim
, branches
+ 5), _RGB32(0, 183, 127) LINE (tx
, branches
)-(tx
+ trim
, branches
+ 5), _RGB32(0, 183, 127) trim = 0
'Place Gold
gold:
'Gold
playerSpeed = 8
LOCATE 3, 30:
PRINT "Use the arrow keys (or WASD keys) to find 20 gold bars per level." LOCATE 4, 30:
PRINT "Every level will have a shorter time." pause:
begin:
_TITLE "Level: " + level$
+ " Score: " + score$
leveltime = level * 5
gametime
= (405 - leveltime
) - (INT(TIMER) - seconds
) player.y = player.y - playerSpeed
t = t + 1
player.y = player.y + playerSpeed
t = t + 1
player.x = player.x - playerSpeed
t = t + 1
player.x = player.x + playerSpeed
t = t + 1
IF player.x
< 0 THEN player.x
= 0 IF player.y
< 0 THEN player.y
= 0
adjustCamera
'Draw Head
CIRCLE (player.x
+ camera.x
, player.y
+ camera.y
), sz
, _RGB32(255, 166, 127) 'Draw Smile
CIRCLE (player.x
+ camera.x
, player.y
+ camera.y
+ 2), 7, _RGB32(255, 0, 0), _PI, 2 * _PI, .5 'Draw Eyes
CIRCLE (player.x
+ camera.x
- 4, player.y
+ camera.y
- 2), 1, _RGB32(0, 0, 255) CIRCLE (player.x
+ camera.x
+ 4, player.y
+ camera.y
- 2), 1, _RGB32(0, 0, 255) 'hat
LINE (player.x
+ camera.x
- 10, player.y
+ camera.y
- 10)-(player.x
+ camera.x
+ 10, player.y
+ camera.y
- 9), _RGB32(155, 0, 0), BF
LINE (player.x
+ camera.x
- 5, player.y
+ camera.y
- 9)-(player.x
+ camera.x
+ 5, player.y
+ camera.y
- 15), _RGB32(155, 0, 0), BF
'body
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 10)-(player.x
+ camera.x
, player.y
+ camera.y
+ 20), _RGB32(155, 0, 0)
'rest of body
'left arm
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 13)-(player.x
+ camera.x
- 15, player.y
+ camera.y
+ 25), _RGB32(155, 0, 0) 'right arm
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 13)-(player.x
+ camera.x
+ 15, player.y
+ camera.y
+ 25), _RGB32(155, 0, 0) 'left leg
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 20)-(player.x
+ camera.x
- 15, player.y
+ camera.y
+ 35), _RGB32(155, 0, 0) 'right leg
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 20)-(player.x
+ camera.x
+ 15, player.y
+ camera.y
+ 35), _RGB32(155, 0, 0)
'left arm
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 13)-(player.x
+ camera.x
- 11, player.y
+ camera.y
+ 25), _RGB32(155, 0, 0) 'right arm
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 13)-(player.x
+ camera.x
+ 11, player.y
+ camera.y
+ 25), _RGB32(155, 0, 0) 'left leg
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 20)-(player.x
+ camera.x
- 11, player.y
+ camera.y
+ 35), _RGB32(155, 0, 0) 'right leg
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 20)-(player.x
+ camera.x
+ 11, player.y
+ camera.y
+ 35), _RGB32(155, 0, 0)
'left arm
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 13)-(player.x
+ camera.x
- 9, player.y
+ camera.y
+ 24), _RGB32(155, 0, 0) 'right arm
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 13)-(player.x
+ camera.x
+ 9, player.y
+ camera.y
+ 24), _RGB32(155, 0, 0) 'left leg
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 20)-(player.x
+ camera.x
- 9, player.y
+ camera.y
+ 35), _RGB32(155, 0, 0) 'right leg
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 20)-(player.x
+ camera.x
+ 9, player.y
+ camera.y
+ 35), _RGB32(155, 0, 0)
'left arm
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 13)-(player.x
+ camera.x
- 7, player.y
+ camera.y
+ 24), _RGB32(155, 0, 0) 'right arm
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 13)-(player.x
+ camera.x
+ 7, player.y
+ camera.y
+ 24), _RGB32(155, 0, 0) 'left leg
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 20)-(player.x
+ camera.x
- 7, player.y
+ camera.y
+ 35), _RGB32(155, 0, 0) 'right leg
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 20)-(player.x
+ camera.x
+ 7, player.y
+ camera.y
+ 35), _RGB32(155, 0, 0)
'left arm
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 13)-(player.x
+ camera.x
- 5, player.y
+ camera.y
+ 23), _RGB32(155, 0, 0) 'right arm
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 13)-(player.x
+ camera.x
+ 5, player.y
+ camera.y
+ 23), _RGB32(155, 0, 0) 'left leg
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 20)-(player.x
+ camera.x
- 5, player.y
+ camera.y
+ 35), _RGB32(155, 0, 0) 'right leg
LINE (player.x
+ camera.x
, player.y
+ camera.y
+ 20)-(player.x
+ camera.x
+ 5, player.y
+ camera.y
+ 35), _RGB32(155, 0, 0)
CIRCLE (player.x
+ check
, player.y
+ check
), sz
, _RGB32(127, 255, 127) CIRCLE (player.x
+ check
, player.y
- check
), sz
, _RGB32(127, 255, 127) CIRCLE (player.x
- check
, player.y
+ check
), sz
, _RGB32(127, 255, 127)
findgold:
score = score + 100
_TITLE "Level: " + level$
+ " Score: " + score$
level = level + 1
_TITLE "Level: " + level$
+ " Score: " + score$
done:
ag:
win:
ag2:
'Thanks to FelippeHeitor for this Sub and the camera code above.
camera.x
= _WIDTH / 2 - player.x
IF camera.x
> 0 THEN camera.x
= 0
IF camera.y
> 0 THEN camera.y
= 0