https://paulsmith6175gmailcom.itch.io/bc
If anyone want to report what their touchscreen stops at on a mobile
If anyone want to report what their touchscreen stops at on a mobile
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Show posts MenuSETFONT 0,3
LOADSPRITE "back.bmp",1
DRAWSPRITE 1,100,100
PRINT "1",1,1
SHOWSCREEN
MOUSEWAIT
LOADSPRITE "Media/back.bmp",2
DRAWSPRITE 2,100,100
PRINT "2",1,1
SHOWSCREEN
MOUSEWAIT
SETCURRENTDIR("Media")
LOADSPRITE "back.bmp",3
DRAWSPRITE 3,100,100
PRINT "3",1,1
SHOWSCREEN
MOUSEWAIT
LOADSPRITE "Media/back.bmp",4
DRAWSPRITE 4,100,100
PRINT "4",1,1
SHOWSCREEN
MOUSEWAIT
INLINE
DECLARE_ALIAS(FMUSIC_LoadSong, "fmod.dll", "_FMUSIC_LoadSong@4", (const char* name), void*);
DECLARE_ALIAS(FMUSIC_PlaySong, "fmod.dll", "_FMUSIC_PlaySong@4", (void* pMod), char);
DECLARE_ALIAS(FMUSIC_FreeSong, "fmod.dll", "_FMUSIC_FreeSong@4", (void* pMod), char);
DECLARE_ALIAS(FSOUND_Init, "fmod.dll", "_FSOUND_Init@12", (int, int, unsigned int), char);
DECLARE_ALIAS(FSOUND_Close, "fmod.dll", "_FSOUND_Close@0", (void), void);
DECLARE_ALIAS(FMUSIC_IsFinished, "fmod.dll", "_FMUSIC_IsFinished@4", (void* pMod), char);
DECLARE_ALIAS(FMUSIC_SetMasterVolume, "fmod.dll", "_FMUSIC_SetMasterVolume@8", (void*, int), char);
// DECLARE_ALIAS(FMUSIC_GetTime, "fmod.dll", "_FMUSIC_GetTime@4",
void* g_pFMod = 0;
// need this for ESC-exits
struct FMOD_killer {~FMOD_killer() {if (g_pFMod) FMod_Stop();} } g_Fmod_killa;
ENDINLINE
GLOBAL fmod_init
FUNCTION FMod_Load: fname$
LOCAL good
IF fmod_init = FALSE
fmod_init=TRUE
ENDIF
FMod_Stop()
INLINE
if(FSOUND_Init) FSOUND_Init(65535,64,0);
if(FMUSIC_LoadSong)
g_pFMod = FMUSIC_LoadSong(fname_Str.c_str());
if(g_pFMod) good = TRUE;
ENDINLINE
RETURN good
ENDFUNCTION
FUNCTION FMod_Play:
INLINE
if(FMUSIC_PlaySong && g_pFMod)
FMUSIC_PlaySong(g_pFMod);
ENDINLINE
ENDFUNCTION
FUNCTION FMod_Stop:
INLINE
if(FMUSIC_FreeSong && g_pFMod)
FMUSIC_FreeSong(g_pFMod);
g_pFMod = 0;
if(FSOUND_Close)
FSOUND_Close();
fmod_init=FALSE;
ENDINLINE
ENDFUNCTION
FUNCTION FMod_IsFinished:
INLINE
char ok=1;
if(FMUSIC_IsFinished && g_pFMod)
ok = FMUSIC_IsFinished(g_pFMod);
return ok ? TRUE : FALSE;
ENDINLINE
RETURN TRUE
ENDFUNCTION
FUNCTION FMod_SetMasterVolume: vol
INLINE
if(FMUSIC_SetMasterVolume && g_pFMod)
{
return FMUSIC_SetMasterVolume(g_pFMod, (int)(vol * 256.0)) ? TRUE:FALSE;
}
ENDINLINE
RETURN FALSE
ENDFUNCTION
// future Crew Second Reality style Circles
// First Version created 5 circle sprites with a palatte rotation but I didn't like it
SETSCREEN 1024,768,1 //runs better in fullscreen mode
GLOBAL a, r,i,b
SETFONT 0,4
PRINT " Please wait slow rendering...",30,20
SHOWSCREEN
LIMITFPS 60
GOSUB picbuild //Render Circles
GOSUB spriteline //Break sprite into 768 sprites lines
b= 180
WHILE TRUE
i= i+ 4 // 1st circle Speed clockwise
b= b +3 // 2nd circle Speed clockwise
ALPHAMODE -1
ZOOMSPRITE 7777,100*SIN(i)+0,100*COS(i)+0,1.5,1.5 // Draw 1st Circle. zoomsprite higher then screen or edges will show
ALPHAMODE 0.9
IF i> 1000 THEN ZOOMSPRITE 1000,100*SIN(b)+0,100*COS(b)+0,1.5,1.5 // Draw 2nd Circle once i>1000
SHOWSCREEN
IF i> 3000 THEN GOSUB flow // bend sprite 1000 once i>3000
WEND
KEYWAIT
// wobble the picture
SUB flow:
FOR y=1 TO 768
a=a +0.001 * 6 // Wobble speed
DRAWSPRITE y, COS( a + y ) * y / 4, y
NEXT
GRABSPRITE 1000,0,0,1024,768 // Grab whole screen
RETURN
ENDSUB
// Draw the circles
SUB picbuild:
r = 0
FOR j= 0 TO 650
r=r + 15
IF r > 400 THEN r = 0
FOR i=0 TO 360 STEP 0.1 // Higher the step the more missed pixels + faster render
SETPIXEL j*SIN(i) + 1024 /2, j*COS(i)+768 /2, RGB(r/3, r/3, r/3) // PLot a dot
NEXT
NEXT
// Grab Whole screen
GRABSPRITE 7777,0,0,1024,768 // Grab the same picture twice
GRABSPRITE 1000,0,0,1024,768
RETURN
ENDSUB
SUB spriteline:
FOR t = 1 TO 768
GRABSPRITE t,1,t,1024,1 //grab 1 line from top to bottom, 1024 pixels wide * 768
NEXT
RETURN
ENDSUB
SETCURRENTDIR("Media") // go to media files
GLOBAL xxx,a
LOADFONT "smalfont.png", 1
SETFONT 1,1.5
LIMITFPS 40
//LOAD IMAGES
X_LOADOBJ "dicecube.ddd", 0
LOADSPRITE "blue.jpg",9999
LOADSPRITE "orange.jpg", 6000
LOADSPRITE "test.jpg",5000
//------------------------------------------------------------------
// GRAB LOT OF SPRITE LINES
STRETCHSPRITE 6000,0,0,1024,768
FOR t = 1 TO 768
GRABSPRITE t+6001,1,t,1024,1
NEXT
STRETCHSPRITE 5000,0,0,1024,768
FOR t = 1 TO 768
GRABSPRITE t+5001,1,t,1024,1
NEXT
STRETCHSPRITE 9999,0,0,1024,768
FOR t = 1 TO 768
GRABSPRITE t+30,1,t,1024,1
NEXT
//----------------------------------------------------------------------
// SHOW ROTATE TEXTURE CUBE
WHILE TRUE
xxx = xxx + 3
GOSUB side3
//CLEARSCREEN TURN THIS ON FOR NO BACKGROUND ( SHOW SECRET )
PRINT "X:" + xxx, 100, 10
X_MAKE3D 1, 50, 45
X_CAMERA 4, 0, 0, 0, 0, 0
X_SETTEXTURE 0, -1
X_ROTATION xxx, xxx/ 2, xxx / 2, 0
X_DRAWOBJ 0,0
IF xxx > 360 THEN xxx = 0
SHOWSCREEN
WEND
//-----------------------------------------------------------------------
SUB side3:
FOR y=1 TO 768
a=a + 0.005 * 2 // * SPEED
DRAWSPRITE y, COS( a + y ) * y /4, y // WOBBLE THE LINES
NEXT
GRABSPRITE 9998,200,150,500,500 // GRAB THE WOBBLED SCREEN
DRAWSPRITE 0,0,0 // DRAW THE TEXTURE
STRETCHSPRITE 9998,340,170,170,170 // DRAW 1 SIDE
STRETCHSPRITE 9998,0,170,170,170 // DRAW 1 SIDE SAME IMAGE
GRABSPRITE 0,0,0,512,512 // GRAB NEW TEXTURE
//-----------------------------------------------------------------------
FOR y=1 TO 768
a=a + 0.005 * 2
DRAWSPRITE y+6001, COS( a + y ) * y/4, y
NEXT
GRABSPRITE 9997,200,150,500,500
DRAWSPRITE 0,0,0
STRETCHSPRITE 9997,170,0,170,170
STRETCHSPRITE 9997,170,340,170,170
GRABSPRITE 0,0,0,512,512
//------------------------------------------------------------------------
FOR y=1 TO 768
a=a + 0.005 * 2
DRAWSPRITE y+5001, COS( a+ y ) *y/4, y
NEXT
GRABSPRITE 9998,200,150,500,500
DRAWSPRITE 0,0,0
STRETCHSPRITE 9998,340,340,170,170
STRETCHSPRITE 9998,170,170,170,170
GRABSPRITE 0,0,0,512,512
RETURN
ENDSUB