Your program is never executing the code within your MainSection subroutine, and therefore not creating your ground object.
1) Somewhere before your main loop (do-loop) add
gosub MainSection
2) At the end of each of your subroutines (OptionsSection and MainSection), add a
return statement so the program is able to jump back out of each of them (after executing the subroutine, return to the location of your calls to
gosub)
3) If you wish to manually control the screen updates (calling
sync), then you need to call
sync on somewhere in your program. At the top of your source would probably be a good choice.
So after the above changes you would have (untested and hastily modified):
REM *****************************************
RemStart
*** TITLE - Galactic Math
*** VERSION - 1.0.0 LAST UPDATED - 11.21.2013
*** DEVELOPER - Tristan Green, John Wu
*** COPYRIGHT - Nothing Yet
*** DATE CREATED - 11.22.2013
***
RemEnd
REM *** START SYSTEM SETUP SECTION
hide mouse
autocam off
`Enable manual screen updates
sync on
REM *** STOP SYSTEM SETUP SECTION
REM *****************************************
REM *****************************************
REM *** START INTRO SECTION
REM *** INTRO SECTION HEADER
REM DECLARE VARIABLES
REM SCREEN DISPLAY
cls 0
load bitmap "E:\Edutainment Game\images\Gala-Math.bmp"
ink rgb(250,250,250),0 : set text font "arial" : set text size 14 : set text to bold : set text transparent
center text 320,420,"Developed by Tristan Green and John Wu"
center text 320,434,"Copyright (c) Nothing 2013"
REM LOAD SOUNDS
REM SOUND EFFECTS
REM SPECIAL EFFECTS
REM REFRESH SCREEN
sync
`execute the code within your MainSection subroutine
gosub MainSection
REM *** INTRO SECTION LOOP
do
REM SCREEN DISPLAY
REM CONTROL INPUT
`Not sure this line is doing what you think but that's another matter
if Keystate(scancode())=1 then gosub OptionsSection
REM REFRESH SCREEN
sync
loop
REM *** END INTRO SECTION
REM *****************************************
REM *****************************************
REM *** START OPTIONS SECTION
REM *** OPTIONS SECTION HEADER
OptionsSection:
REM DECLARE VARIABLES
REM SCREEN DISPLAY
REM SOUND EFFECTS
REM SPECIAL EFFECTS
REM REFRESH SCREEN
REM *** OPTIONS SECTION LOOP
REM CONTROL INPUT
REM REFRESH SCREEN
REM *** END OPTIONS SECTION
REM *****************************************
REM *****************************************
REM *** START MAIN SECTION
REM *** MAIN SECTION HEADER
`jump back into your main loop
return
MainSection:
REM DECLARE VARIABLES
Gravity# = 1 : rem How powerful gravity is
MyPower = 10 : rem How strong the player can jump
MySpeed = 9 : rem How fast the player can run
MyScore = 0 : rem Starting score is 0
MyAcceleration# = 0.0 : rem Start without jumping or falling
REM SCREEN DISPLAY
cls 0 : backdrop on
REM LOAD IMAGES
Load Image "E:\Edutainment Game\images\16032727.jpg",3
rem create a floor texture
REM OBJECT CREATION
rem Floor
make object box 3,2000,1000,2000 : position object 3,0,-500,0 : color object 3,rgb(0,255,0)
make object collision box 3,-1000,-500,-1000,1000,500,1000,0
texture object 3,9 : scale object texture 3,25,25
REM LOAD MODELS
REM SET COLLISIONS
REM SET CAMERA
REM SOUND EFFECTS
REM SPECIAL EFFECTS
REM REFRESH SCREEN
sync
`jump back to the line which is just before your Do loop
return
REM *** MAIN SECTION LOOP
Wait key