Welcome, Guest |
You have to register before you can post on our site.
|
Forum Statistics |
» Members: 31
» Latest member: nartex
» Forum threads: 110
» Forum posts: 847
Full Statistics
|
Online Users |
There are currently 38 online users. » 0 Member(s) | 36 Guest(s) Bing, Facebook
|
Latest Threads |
Happy Birthday
Forum: Everything else
Last Post: aliensoldier
2 hours ago
» Replies: 4
» Views: 24
|
That 3d thing
Forum: NaaLaa 7 Code
Last Post: aliensoldier
2 hours ago
» Replies: 16
» Views: 1,416
|
"A Game Jam is Coming Up"
Forum: Programming
Last Post: johnno56
Today, 08:01 AM
» Replies: 1
» Views: 22
|
Enchanted Forest
Forum: NaaLaa 7 Code
Last Post: 1micha.elok
05-16-2024, 02:16 PM
» Replies: 8
» Views: 245
|
Scrolling
Forum: NaaLaa 7 Questions
Last Post: johnno56
05-15-2024, 06:25 PM
» Replies: 3
» Views: 101
|
Devil's Triangle (The Gam...
Forum: NaaLaa 7 Code
Last Post: 1micha.elok
05-15-2024, 10:51 AM
» Replies: 1
» Views: 136
|
S3D : the devil's triangl...
Forum: NaaLaa 7 Questions
Last Post: 1micha.elok
05-08-2024, 07:26 AM
» Replies: 9
» Views: 550
|
Just for the Star Wars fa...
Forum: Everything else
Last Post: johnno56
05-05-2024, 10:40 PM
» Replies: 7
» Views: 405
|
Convex hull, quick algori...
Forum: NaaLaa 7 Code
Last Post: johnno56
05-04-2024, 07:23 PM
» Replies: 7
» Views: 490
|
Wolf3D
Forum: NaaLaa 7 Questions
Last Post: johnno56
05-02-2024, 07:57 PM
» Replies: 24
» Views: 2,129
|
|
|
Audio creation |
Posted by: Marcus - 01-18-2024, 06:46 PM - Forum: Suggestions
- Replies (3)
|
|
Make it possible to create a sound effect from an array of raw data. With such a function you could write a library in n7 for generating simple sound effects, such as explosions and beeps and boops.
/Marcus
|
|
|
Youtube channel recommendation |
Posted by: kevin - 01-11-2024, 09:39 AM - Forum: Programming
- Replies (7)
|
|
Recently, I have been spending some time looking at videos posted by user Javidx9 on Youtube. Although these all relate to the C++ programming language (which I am not familiar with), the videos explain the principles behind the code in such a clear way, that I find it releatively easy to follow, and have been able to convert some of the projects to Naalaa 7. I actually used one of his videos when I was writing the Asteroids game for Naalaa that is included in the examples folder of the distribution, and I am currently using this video:
Circle collisions
...for a pool game that I am working on at the moment.
May be worth a look at his Youtube channel if you have a few moments to spare, or are looking for inspiration for ideas for gaming projects in Naalaa 7?
|
|
|
Pong |
Posted by: johnno56 - 12-31-2023, 11:31 PM - Forum: NaaLaa 7 Code
- Replies (2)
|
|
Cast your minds back to before the arrival of Mario when Dinosaurs walked... Sorry. Too far back...
Back when Naalaa 6 reigned supreme... with its Tile Map editor and Raycaster... from the minds of Allan Alcorn and Nolan Bushnell (1972) came the awe-inspiring spectacle that was to be known as "Pong"... made its way to our monitors in all of its monochromatic glory!! The Naalaa 6 version was produced by none other than Marcus (drum roll) Johansson. (see screen grab)
... do not forget the original N6 code...
Code: rem ==================================================================
rem Pong, from basicprogramming.org.
rem
rem By Marcus Johansson.
rem ==================================================================
import "Speed.lib"
set window 0, 0, 320, 240, false, 2
set redraw off
plyX = 8
comX = 320 - 24
comY# = 120.0
comWantedY# = 120.0
comTimer = 25
hasBall = 1
ballX#
ballY#
ballDX#
ballDY#
ballSpeed# = 3.0
comScore = 0
plyScore = 0
do
plyY = mousey()
if hasBall = 1
ballX# = float(plyX + 16)
ballY# = float(plyY - 4)
if mousebutton(0)
ballDX = 1.0
ballDY = 0.0
ballSpeed = 2.0
hasBall = 0
endif
elseif hasBall = 2
ballX = float(comX - 8)
ballY = comY - 4.0
else
ballX = ballX + ballDX*ballSpeed
ballY = ballY + ballDY*ballSpeed
if ballY < 0.0
ballY = 0.0
ballDY = -ballDY
elseif ballY# > 240.0 - 8.0
ballY = 240.0 - 8.0
ballDY = -ballDY
endif
if ballDX < 0.0
if RectsOverlap(plyX, plyY - 24, 16, 48, int(ballX), int(ballY), 8, 8)
dy# = (ballY - float(plyY))/64.0
dx# = 0.5
k# = 1.0/sqr(dx*dx + dy*dy)
ballDX# = k*dx
ballDY# = k*dy
ballSpeed = min#(ballSpeed*1.1, 6.0)
endif
else
if RectsOverlap(comX, int(comY) - 24, 16, 48, int(ballX), int(ballY), 8, 8)
dy# = (ballY - comY)/64.0
dx# = -0.5
k# = 1.0/sqr(dx*dx + dy*dy)
ballDX# = k*dx
ballDY# = k*dy
ballSpeed = min#(ballSpeed*1.1, 6.0)
endif
endif
if ballX > 320.0
hasBall = 1
plyScore = plyScore + 1
elseif ballX < -8.0
hasBall = 2
comTimer = 50
comWantedY = float(rnd(240))
comScore = comScore + 1
endif
endif
comTimer = comTimer - 1
if comTimer <= 0
if hasBall = 1
comWantedY = ballY - 16.0 + float(rnd(32)) + (float(comX) - ballX)/ballSpeed*ballDY
comTimer = comTimer + 25 + rnd(25)
elseif hasBall = 2
hasBall = 0
ballDX = -1.0
ballDY = 0.0
ballSpeed = 2.0
else
comWantedY = ballY - 20.0 + float(rnd(40)) + (float(comX) - ballX)/ballSpeed*ballDY
if ballDX < 0.0
comTimer = comTimer + 20 + rnd(20)
else
comTimer = comTimer + 6 + rnd(6)
endif
endif
endif
comY = 0.90*comY + 0.1*comWantedY
set color 0, 0, 0
cls
set color 255, 255, 255
for y = 0 to 29
draw rect 160 - 2, y*8 + 2, 4, 4, true
next
draw rect plyX, plyY - 24, 16, 48, true
draw rect comX, int(comY) - 24, 16, 48, true
draw rect int(ballX), int(ballY), 8, 8, true
set caret 16, 8
center plyScore
set caret 320 - 16, 8
center comScore
redraw
proc SPD_HoldFrame(60)
until keydown(27) or not running()
function RectsOverlap(x0, y0, w0, h0, x1, y1, w1, h1)
if x0 + w0 < x1 then return false
if y0 + h0 < y1 then return false
if x1 + w1 < x0 then return false
if y1 + h1 < y0 then return false
return true
endfunc
The following is my N7 version of Pong (based on the N6 version) - not optimized - sorry...
pong3.zip (Size: 1.72 MB / Downloads: 8)
|
|
|
Xmas New Year |
Posted by: johnno56 - 12-23-2023, 06:43 AM - Forum: Suggestions
- Replies (2)
|
|
I would like to "suggest" that everyone have a great Xmas ahead of an even better New Year.
All the best!
J
|
|
|
|