|
Post by Oruam on Dec 27, 2017 20:06:05 GMT -5
UPDATED 23/01/2018
I want to make available the source codes of our project to also ask for help in the development of it! This game has a perfect functional reset VRAM in middle each level! Credits by NETO "Esrael Neto" the "Brazil Hacker Legend" This game also has amazing music made by Paulo Ferreira the "Lin Kuei Hacker" Improved box collisions betwen player and enemy and betwen shurikens and eneny, also add pause game by press start button and if shot enemy several times find a good end 😄. romhacking.ru/news/v_razrabotke_killer_shinobi_smd/2017-12-28-4770![]()
|
|
|
Post by tomahomae on Jan 2, 2018 1:21:00 GMT -5
I need find BMP2Tile32.exe program link to download! Can someone help? Get it! b2t_61.rar (302.98 KB)
|
|
Deleted
Deleted Member
Posts: 0
|
Post by Deleted on Jan 2, 2018 13:30:02 GMT -5
So far the only general purpose collision code I can remember is from the late, great Moon who wrote this:
declare function softcol(x1 as integer, y1 as integer, x2 as integer, y2 as integer, x3 as integer, y3 as integer, x4 as integer, y4 as integer) as integer if x1 > x4 then return 0 if x2 < x3 then return 0 if y1 > y4 then return 0 if y2 < y3 then return 0 return 1 end function
I guess the next step would be for someone to compile and optimze this code in assembly. The trouble with asm routines is making sure various bit and pieces of BEX don't cause problems.
|
|
|
Post by Oruam on Jan 2, 2018 21:56:27 GMT -5
Download the rom game and project files again, I have upgraded it, with more acurate controls, with 3 speeds to walk, full air jump control, stop animations at horizont level limits, just press Start to change the game cenarios.
|
|
|
Post by linkuei on Jan 3, 2018 21:39:36 GMT -5
Nice job my little friend keep it up eh eh eh...
|
|
Deleted
Deleted Member
Posts: 0
|
Post by Deleted on Jan 9, 2018 15:02:57 GMT -5
So far the only general purpose collision code I can remember is from the late, great Moon who wrote this: declare function softcol(x1 as integer, y1 as integer, x2 as integer, y2 as integer, x3 as integer, y3 as integer, x4 as integer, y4 as integer) as integer if x1 > x4 then return 0 if x2 < x3 then return 0 if y1 > y4 then return 0 if y2 < y3 then return 0 return 1 end function
I guess the next step would be for someone to compile and optimze this code in assembly. The trouble with asm routines is making sure various bit and pieces of BEX don't cause problems. *cough*SecondBASIC*cough*
|
|
Deleted
Deleted Member
Posts: 0
|
Post by Deleted on Jan 22, 2018 14:30:23 GMT -5
Here's moon's code in action:
a = AddSprite(1,1) b = AddSprite(1,1) PropSprite a,1,0 PropSprite b,2,0 MoveSprite a,128,128 MoveSprite b,132,132 ax = SpritePosX(a) ax2 = ax + 8 ay = SpritePosY(a) ay2 = ay + 8 bx = SpritePosX(b) bx2 = bx + 8 by = SpritePosY(b) by2 = by+8 If softcol(ax,ay,ax2,ay2,bx,by,bx2,by2) Then Print "collision" End If
Declare Function softcol(x1 As Integer, y1 As Integer, x2 As Integer, y2 As Integer, x3 As Integer, y3 As Integer, x4 As Integer, y4 As Integer) As Integer If x1 > x4 Then Return 0 If x2 < x3 Then Return 0 If y1 > y4 Then Return 0 If y2 < y3 Then Return 0 Return 1 End Function
Your problem is you're missing half of the required variables. x1 and x2 are Sprite1's X location and Sprite1's X location + width. Same applies for Y1 and Y2, x3 and x4 = sprite 2's data.
|
|
|
Post by Oruam on Jan 22, 2018 16:49:40 GMT -5
I found a strange way to collisions! Attachments:
|
|