1. //SUN\\
  2.  
  3. int sun = 1;
  4. int SunType;
  5.  
  6. void CreateSun( int SizeValue )
  7. {
  8. int ship = 1000;
  9. double size;
  10.  
  11.  
  12. /*Sizes - 0 = 750,000 Unit Radius
  13. 1 = 1,000,000 Unit Radius
  14. 2 = 1,500,000 Unit Radius
  15. 3 = 2,000,000 Unit Radius
  16. */
  17.  
  18. switch ( SizeValue )
  19. {
  20. case 0:
  21. size = 750000;
  22. dbLoadImage( "sun0.png", sun);
  23. SunType = 0;
  24. break;
  25. case 1:
  26. size = 900000;
  27. dbLoadImage( "sun1.png", sun);
  28. SunType = 1;
  29. break;
  30. case 2:
  31. size = 1000000;
  32. dbLoadImage( "sun2.png", sun);
  33. SunType = 2;
  34. break;
  35. case 3:
  36. size = 1109999;
  37. dbLoadImage( "sun3.png", sun);
  38. SunType = 3;
  39. break;
  40. }
  41. dbMakeObjectSphere(sun , 1, 100, 100);
  42. dbPositionObject(sun, 0, 0, 0);
  43. dbScaleObject ( sun, size, size, size );
  44. dbTextureObject ( sun, sun );
  45. dbSetObjectLight ( sun, true );
  46. dbSetObjectAmbient ( sun, 0 );
  47. dbSetObjectEmissive ( sun, RGB(255, 255, 0) );
  48.  
  49. dbLoadImage( "ship.png", ship);
  50. dbLoadObject ( "ship.x", ship );
  51. dbMakeObject(ship, ship, ship);
  52. dbTextureObject (ship, ship);
  53. dbPositionObject(ship, 1500, 1500, -6000);
  54. //dbScaleObject (ship,
  55. dbSetObjectLight (ship, true);
  56.  
  57.  
  58.  
  59. }
  60.  
  61.  
  62. ////////////////////////////////////////////////////////////
  63.  
  64.  
  65.  
  66.  
  67.  
  68. //Load Planet Textures\\
  69.  
  70.  
  71. ////////////////////////
  72.  
  73. void CreateTinySystem()
  74. {
  75. dbLoadImage ( "Earth.tga", 2);
  76. dbLoadImage ( "GasGiant.jpg", 3);
  77. dbLoadImage ( "GasGiant2.jpg", 4);
  78. dbLoadImage ( "IcePlanet.jpg", 5);
  79. dbLoadImage ( "DeadEarth.jpg", 6);
  80. dbLoadImage ( "CloseToSun.jpg", 7);
  81. int PlanetCount = 1;
  82. int PlanetID = 2;
  83. int life = dbRND(4);
  84.  
  85.  
  86. for( PlanetCount = 1; PlanetCount <= (dbRND(2) + 1); PlanetID++)
  87. {
  88. int life = dbRND(4);
  89. int PlanetSize = (dbRND(2) + 1);
  90.  
  91. switch(PlanetSize)
  92. {
  93. case 1:
  94. //Plutoish Planet
  95. dbMakeObjectSphere (PlanetID, 1, 100, 100);
  96. dbPositionObject (PlanetID, ((dbObjectPositionX(sun)) + (dbRND(600000) + 400000)), dbObjectPositionY(sun), ((dbObjectPositionZ(sun)) + (dbRND(600000) + 400000)));
  97. dbScaleObject ( PlanetCount, 100000, 100000, 100000 );
  98. dbTextureObject ( PlanetCount, 5 );
  99. dbSetObjectLight ( PlanetCount, true );
  100. break;
  101. case 2:
  102. //Earth/DeadEarth
  103.  
  104. if life == 0;
  105. {
  106. dbMakeObjectSphere (PlanetID, 1, 100, 100);
  107. dbPositionObject (PlanetID, ((dbObjectPositionX(sun)) + (dbRND(300000) + 200000)), dbObjectPositionY(sun), ((dbObjectPositionZ(sun)) + (dbRND(300000) + 200000)));
  108. dbScaleObject ( PlanetCount, 200000, 200000, 200000 );
  109. dbTextureObject ( PlanetCount, 2 );
  110. dbSetObjectLight ( PlanetCount, true );
  111.  
  112.  
  113. }
  114. else
  115. {
  116. dbMakeObjectSphere (PlanetID, 1, 100, 100);
  117. dbPositionObject (PlanetID, ((dbObjectPositionX(sun)) + (dbRND(300000) + 200000)), dbObjectPositionY(sun), ((dbObjectPositionZ(sun)) + (dbRND(300000) + 200000)));
  118. dbScaleObject ( PlanetCount, 200000, 200000, 200000 );
  119. dbTextureObject ( PlanetCount, 6 );
  120. dbSetObjectLight ( PlanetCount, true );
  121. }
  122.  
  123. break;
  124. case 3:
  125. //Close to sun
  126. dbMakeObjectSphere (PlanetID, 1, 100, 100);
  127. dbPositionObject (PlanetID, ((dbObjectPositionX(sun)) + (dbRND(100000) + 60000)), dbObjectPositionY(sun), ((dbObjectPositionZ(sun)) + (dbRND(100000) + 60000)));
  128. dbScaleObject ( PlanetCount, 150000, 150000, 150000 );
  129. dbTextureObject ( PlanetCount, 5 );
  130. dbSetObjectLight ( PlanetCount, true );
  131. break;
  132.  
  133. }
  134. PlanetID++;
  135. }
  136. }
  137.  
  138.  
  139. void CreateSmallSystem()
  140. {
  141. return;
  142. }
  143.  
  144. void CreateMediumSystem()
  145. {
  146. return;
  147. }
  148.  
  149. void CreateLargeSystem()
  150. {
  151. return;
  152. }
  153.  
  154. void CreatePlanets()
  155. {
  156. switch(SunType)
  157. {
  158. case 0:
  159. CreateTinySystem();
  160. break;
  161. case 1:
  162. CreateSmallSystem();
  163. break;
  164. case 2:
  165. CreateMediumSystem();
  166. break;
  167. case 3:
  168. CreateLargeSystem();
  169. break;
  170. }
  171. }