home *** CD-ROM | disk | FTP | other *** search
/ 404 Jogos / CLJG.iso / Acao / Doubleshotz / Doubleshotz.dcr / Internal_10_PREP.ls < prev    next >
Encoding:
Text File  |  2007-09-27  |  9.3 KB  |  229 lines

  1. global PREPMODE, gCarName, gGameMODE, gFrameCounter, gTextures, gOverlays, ovTxt, ovFader, gHavok, g3DWorld, mTrack, mSky, mCamera, mFinish, mLight, mRamp1, mRamp2, ovKey_1_1, ovKey_1_2, ovKey_2_1, ovKey_2_2, kForward, kBackward, kLeft, kRight, kBoost, gCarsPrepared, gCarsReady, isPlaying, hasFinished, SndC_Music, SndC_Grnd, SndC_FX1, SndC_FX2, SndC_Engine, SndC_EnemyFX, SndC_VO, gEngineSndList, gCar1Used, gScoresList, gHasStarted
  2.  
  3. on beginSprite me
  4.   PREPMODE = 1
  5. end
  6.  
  7. on exitFrame me
  8.   case PREPMODE of
  9.     1:
  10.       gFrameCounter = 0
  11.       gCar1Used = 0
  12.       gTextures = [:]
  13.       gOverlays = [:]
  14.       gHavok = member("Havok")
  15.       gHavok.deactivationParameters = [5.0, 0.10000000000000001]
  16.       isPlaying = 0
  17.       hasFinished = 0
  18.       gEngineSndList = [SndC_FX1, SndC_FX2]
  19.       g3DWorld = sprite(2).member
  20.       g3DWorld.resetWorld()
  21.       updateStage()
  22.       sendSprite(2, #prepareCamera)
  23.       member("countdown").posterFrame = 1
  24.       createTexture("Txt_3", "countdown", #rgba8888, 0, #low)
  25.       member("countdown").posterFrame = 2
  26.       createTexture("Txt_2", "countdown", #rgba8888, 0, #low)
  27.       member("countdown").posterFrame = 3
  28.       createTexture("Txt_1", "countdown", #rgba8888, 0, #low)
  29.       member("countdown").posterFrame = 4
  30.       createTexture("Txt_Go", "countdown", #rgba8888, 0, #low)
  31.       repeat with i = 0 to 9
  32.         member("numbers_white").posterFrame = i + 1
  33.         createTexture("Digit_" & i, "numbers_white", #rgba4444, 0, #low)
  34.       end repeat
  35.       createTexture("Needle", "speedometer_needle", #rgba4444, 0, #low)
  36.       createTexture("Winner", "winner", #rgba4444, 0, #low)
  37.       createTexture("ds_light", "ds_light", #rgba4444, 0, #low)
  38.       mTrack = g3DWorld.model("FLOOR")
  39.       mTrack.addModifier(#meshDeform)
  40.       mTrack.userData.addProp(#kind, "track")
  41.       T = gHavok.makeFixedRigidBody(mTrack.name, 0)
  42.       T.restitution = 0
  43.       T.friction = 0
  44.       mTrack.visibility = #none
  45.       gHavok.removeInterest(mTrack.name)
  46.       mRoad = g3DWorld.model("TRACK")
  47.       mRoad.shader.texture.renderFormat = #rgba5550
  48.       mRoad.shader.texture.nearFiltering = 0
  49.       case gCarName of
  50.         "Dragster":
  51.           mFinish = g3DWorld.model("FINISH")
  52.           repeat with i = 1 to 80
  53.             cloneName = "CONE_" & i
  54.             tmodel = g3DWorld.model("CONE").clone(cloneName)
  55.             tmodel.transform.position.y = 25 * i
  56.             tmodel.transform.position.x = tmodel.transform.position.x - 0.20000000000000001 + (random(5) * 0.10000000000000001)
  57.             tmodel.transform.rotation.z = random(360)
  58.           end repeat
  59.           g3DWorld.model("CONE").visibility = #none
  60.           repeat with i = 1 to 20
  61.             cloneName = "FLAG_" & i
  62.             tmodel = g3DWorld.model("FLAGS").clone(cloneName)
  63.             tmodel.transform.position.y = 100 * i
  64.           end repeat
  65.           g3DWorld.model("RAMP_1").removeFromWorld()
  66.           g3DWorld.model("RAMP_2").removeFromWorld()
  67.           g3DWorld.model("CLOUD").removeFromWorld()
  68.           g3DWorld.model("LAUNCHPAD").removeFromWorld()
  69.           g3DWorld.model("LAUNCHPAD2").removeFromWorld()
  70.           g3DWorld.model("launchtower").removeFromWorld()
  71.         "Jumper":
  72.           g3DWorld.model("FINISH").removeFromWorld()
  73.           repeat with i = 1 to 80
  74.             cloneName = "CONE_" & i
  75.             tmodel = g3DWorld.model("CONE").clone(cloneName)
  76.             tmodel.transform.position.y = 25 * i
  77.             tmodel.transform.position.x = tmodel.transform.position.x - 0.20000000000000001 + (random(5) * 0.10000000000000001)
  78.             tmodel.transform.rotation.z = random(360)
  79.           end repeat
  80.           g3DWorld.model("CONE").visibility = #none
  81.           repeat with i = 1 to 20
  82.             cloneName = "FLAG_" & i
  83.             tmodel = g3DWorld.model("FLAGS").clone(cloneName)
  84.             tmodel.transform.position.y = 100 * i
  85.           end repeat
  86.           mRamp1 = g3DWorld.model("RAMP_1")
  87.           mRamp1.transform.position.y = mRamp1.transform.position.y + 50
  88.           mRamp1.addModifier(#meshDeform)
  89.           mRamp1.userData.addProp(#kind, "ramp")
  90.           T = gHavok.makeFixedRigidBody(mRamp1.name, 0)
  91.           T.restitution = 0
  92.           gHavok.removeInterest(mRamp1.name)
  93.           mRamp2 = g3DWorld.model("RAMP_2")
  94.           mRamp2.transform.position.y = mRamp2.transform.position.y + 50
  95.           mRamp2.addModifier(#meshDeform)
  96.           mRamp2.userData.addProp(#kind, "ramp")
  97.           T = gHavok.makeFixedRigidBody(mRamp2.name, 0)
  98.           T.restitution = 0
  99.           gHavok.removeInterest(mRamp2.name)
  100.           g3DWorld.model("CLOUD").removeFromWorld()
  101.           g3DWorld.model("LAUNCHPAD").removeFromWorld()
  102.           g3DWorld.model("LAUNCHPAD2").removeFromWorld()
  103.           g3DWorld.model("launchtower").removeFromWorld()
  104.         "Rocket":
  105.           g3DWorld.model("FINISH").removeFromWorld()
  106.           g3DWorld.model("CONE").removeFromWorld()
  107.           g3DWorld.model("RAMP_1").removeFromWorld()
  108.           g3DWorld.model("RAMP_2").removeFromWorld()
  109.           g3DWorld.model("TRACK").removeFromWorld()
  110.           g3DWorld.model("guardrail_1").removeFromWorld()
  111.           g3DWorld.model("guardrail_2").removeFromWorld()
  112.           tmodel = g3DWorld.model("LAUNCHPAD")
  113.           repeat with i in tmodel.shaderList
  114.             i.shader.texture.member = member("launchpad")
  115.             i.shader.texture.renderFormat = #rgba8880
  116.           end repeat
  117.           g3DWorld.model("LAUNCHPAD").addModifier(#meshDeform)
  118.           T = gHavok.makeFixedRigidBody(g3DWorld.model("LAUNCHPAD").name, 0)
  119.           T.restitution = 0
  120.           T.friction = 1
  121.           tmodel = g3DWorld.model("LAUNCHPAD2")
  122.           repeat with i in tmodel.shaderList
  123.             i.shader.texture.member = member("launchpad_grnd")
  124.             i.shader.texture.renderFormat = #rgba8880
  125.           end repeat
  126.           ty = 25
  127.           repeat with i = 1 to 16
  128.             cloneName = "CLOUD_" & i
  129.             tmodel = g3DWorld.model("CLOUD").clone(cloneName)
  130.             tmodel.transform.position.y = ty
  131.             tmodel.transform.position.x = -20 + random(60)
  132.             tmodel.transform.position.z = -40 + random(80)
  133.             tmodel.transform.rotation.y = random(360)
  134.             tmodel.scale(1 + random(3))
  135.             tmodel.shader.texture.renderFormat = #rgba4444
  136.             tmodel.shader.texture.nearFiltering = 0
  137.             ty = ty + 150 + random(150)
  138.           end repeat
  139.       end case
  140.       PREPMODE = 9
  141.     9:
  142.       sendSprite(2, #prepareCar)
  143.       PREPMODE = 10
  144.     10:
  145.       gCarsPrepared = 1
  146.       sendSprite(2, #checkPrepared)
  147.       if gCarsPrepared = 1 then
  148.         sendSprite(2, #startCar)
  149.         g3DWorld.model("Dragster_Body").removeFromWorld()
  150.         g3DWorld.model("Dragster_Wheel_FL").removeFromWorld()
  151.         g3DWorld.model("Dragster_Wheel_FR").removeFromWorld()
  152.         g3DWorld.model("Dragster_Wheel_RL").removeFromWorld()
  153.         g3DWorld.model("Dragster_Wheel_RR").removeFromWorld()
  154.         g3DWorld.model("Jumper_Body").removeFromWorld()
  155.         g3DWorld.model("Jumper_Wheel_FL").removeFromWorld()
  156.         g3DWorld.model("Jumper_Wheel_FR").removeFromWorld()
  157.         g3DWorld.model("Jumper_Wheel_RL").removeFromWorld()
  158.         g3DWorld.model("Jumper_Wheel_RR").removeFromWorld()
  159.         g3DWorld.model("Rocket_Body").removeFromWorld()
  160.         g3DWorld.model("Flame").removeFromWorld()
  161.         PREPMODE = 11
  162.       end if
  163.     11:
  164.       gCarsReady = 1
  165.       sendSprite(2, #checkReady)
  166.       if gCarsReady = 1 then
  167.         PREPMODE = 12
  168.         if gCarName = "Rocket" then
  169.           g3DWorld.directionalPreset = #bottomCenter
  170.         end if
  171.       end if
  172.     12:
  173.       mCamera.overlay[ovFader].blend = max(0, mCamera.overlay[ovFader].blend - 10)
  174.       if mCamera.overlay[ovFader].blend = 0 then
  175.         PREPMODE = 12.09999999999999964
  176.       end if
  177.     12.09999999999999964:
  178.       SndC_Music.stop()
  179.       SndC_Music.volume = 255
  180.       gFrameCounter = 0
  181.       PREPMODE = 12.19999999999999929
  182.     12.19999999999999929:
  183.       if gFrameCounter >= 30 then
  184.         mCamera.overlay[ovTxt].source = gTextures.getProp("Txt_2")
  185.         mCamera.overlay[ovTxt].blend = 100
  186.         gFrameCounter = 0
  187.         SndC_Music.play(member("Snd_Music_hit"))
  188.         PREPMODE = 12.30000000000000071
  189.       else
  190.         if gFrameCounter >= 20 then
  191.           mCamera.overlay[ovTxt].blend = max(0, mCamera.overlay[ovTxt].blend - 10)
  192.         end if
  193.       end if
  194.     12.30000000000000071:
  195.       if gFrameCounter >= 30 then
  196.         mCamera.overlay[ovTxt].source = gTextures.getProp("Txt_1")
  197.         mCamera.overlay[ovTxt].blend = 100
  198.         gFrameCounter = 0
  199.         SndC_Music.play(member("Snd_Music_hit"))
  200.         PREPMODE = 12.40000000000000036
  201.       else
  202.         if gFrameCounter >= 30 then
  203.           mCamera.overlay[ovTxt].blend = max(0, mCamera.overlay[ovTxt].blend - 10)
  204.         end if
  205.       end if
  206.     12.40000000000000036:
  207.       if gFrameCounter >= 30 then
  208.         mCamera.overlay[ovTxt].source = gTextures.getProp("Txt_Go")
  209.         mCamera.overlay[ovTxt].blend = 100
  210.         gFrameCounter = 0
  211.         SndC_Music.play(member("Snd_Music_play"))
  212.         PREPMODE = 20
  213.       else
  214.         if gFrameCounter >= 30 then
  215.           mCamera.overlay[ovTxt].blend = max(0, mCamera.overlay[ovTxt].blend - 10)
  216.         end if
  217.       end if
  218.     20:
  219.       mCamera.overlay[ovKey_1_1].blend = 100
  220.       mCamera.overlay[ovKey_2_1].blend = 100
  221.       gHasStarted = 0
  222.       gFrameCounter = 0
  223.       isPlaying = 1
  224.       go("PLAY")
  225.   end case
  226.   gFrameCounter = gFrameCounter + 1
  227.   go(the frame)
  228. end
  229.