import plus
import math
import Levels
	
class Level10(Levels.SuperLevel):
    "Level 10 Sleepin wit da fishes"
    name = "Level 10"
    preview = "Levels/Level10/cosa_nostra_preview.tga"
    mission_index = 10
    
    def __init__(self):
        Levels.SuperLevel.__init__(self)

        self.startpoint = (84, 111)
        self.startrotation = (math.pi / 2, 0, 0)
            
        self.AddTerrain("resources\\Levels\\Heightmap\\cosa_nostra_hightmap.bmp", 128, 14, 128, "resources\\Levels\\Ground_Textures\\cosa_nostra.tga", "resources\\Levels\\Ground_Textures\\dirt1.tga", 1, 1, "resources\\Levels\\Ground_Textures\\dirt4cosa.tga")
        self.AddTerrainPanels("resources\\Levels\\Ground_Textures\\tile.bmp");

        self.AddTerrainEdgeOverlay("Resources\\Levels\\Ground_Textures\\RoadExt_Yard_Ape.bmp", (528.0, 0.0, 110.5), (127.9,0.0,110.5), 6.9)
        self.AddTerrainEdgeOverlay("Resources\\Levels\\Ground_Textures\\RoadExt_Yard_Ape.bmp", (0.1, 0.0, 110.5), (-400,0.0,110.5), 6.9)
    
        self.AddSkybox("resources\\Levels\\SkyBox\\sky_left_cosa_nostra.bmp", "resources\\Levels\\SkyBox\\sky_right_cosa_nostra.bmp", "resources\\Levels\\SkyBox\\sky_front_cosa_nostra.bmp", "resources\\Levels\\SkyBox\\sky_back_cosa_nostra.bmp", "resources\\Levels\\SkyBox\\sky_top_cosa_nostra.bmp")
        self.AddCloudPlane("resources\\Levels\\SkyBox\\cloud_map1_cosa_nostra.tga", 165.0, 0.003)
        self.AddSun(0.28, "Resources\\Levels\\Billboards\\moon.tga", 1.5, 0.5, 0.4, 0.7)
        #self.AddLensFlareLayer("Resources\\Levels\\Billboards\\lens1.bmp", 1.0, 3.0)
        #self.AddLensFlareLayer("Resources\\Levels\\Billboards\\lens2.bmp", 2.0, 0.5)
        #self.AddLensFlareLayer("Resources\\Levels\\Billboards\\lens1.bmp", 3.0, 0.25)
        #self.AddLensFlareLayer("Resources\\Levels\\Billboards\\lens3.bmp", 8.0, 1.0)
        #self.AddLensFlareLayer("Resources\\Levels\\Billboards\\lens1.bmp", -2.0, 0.5)
        #self.AddLensFlareLayer("Resources\\Levels\\Billboards\\lens4.bmp", -4.0, 0.25)
        #self.AddLensFlareLayer("Resources\\Levels\\Billboards\\lens1.bmp", -5.5, 0.25)
      
        self.AddDigZone(43.9, 36.0, 50.7, 49.0, 2.0, 0)
        self.AddDumpZone(43.7, 35.8, 50.9, 49.2)
        
        self.AddOctagon(10, 250.0, 50.0)
        self.SetOctagonTexture(0, "Resources\\Levels\\Billboards\\TreePannel1_cosa_nostra.tga")
        self.SetOctagonTexture(1, "Resources\\Levels\\Billboards\\TreePannel1_cosa_nostra.tga")
        self.SetOctagonTexture(2, "Resources\\Levels\\Billboards\\TreePannel1_cosa_nostra.tga")
        self.SetOctagonTexture(3, "Resources\\Levels\\Billboards\\TreePannel1_cosa_nostra.tga")
        self.SetOctagonTexture(4, "Resources\\Levels\\Billboards\\TreePannel1_cosa_nostra.tga")
        self.SetOctagonTexture(5, "Resources\\Levels\\Billboards\\TreePannel1_cosa_nostra.tga")
        self.SetOctagonTexture(6, "Resources\\Levels\\Billboards\\TreePannel1_cosa_nostra.tga")
        self.SetOctagonTexture(7, "Resources\\Levels\\Billboards\\TreePannel1_cosa_nostra.tga")
        self.SetOctagonTexture(8, "Resources\\Levels\\Billboards\\TreePannel1_cosa_nostra.tga")
        self.SetOctagonTexture(9, "Resources\\Levels\\Billboards\\TreePannel1_cosa_nostra.tga")
        #self.SetOctagonTexture(10, "Resources\\Levels\\Billboards\\TreePannel1_cosa_nostra.tga")
        #self.SetOctagonTexture(11, "Resources\\Levels\\Billboards\\TreePannel1_cosa_nostra.tga")
    
    
        self.SetTreePlacementBitmap("resources\\Levels\\TreeMaps\\tree_map_level10.bmp")
        self.AssignTreeToColor("resources\\Levels\\Billboards\\tree_3_cosa_nostra.tga", (172, 172, 172), 1.0, 3.3, 1, 25.0)
        self.AssignTreeToColor("resources\\Levels\\Billboards\\tree_4_cosa_nostra.tga", (0, 255, 0), 3.0, 5.3, 1, 25.0)
        self.AssignTreeToColor("resources\\Levels\\Billboards\\tree_2_cosa_nostra.tga", (255, 0, 0), 2.0, 3.3, 1, 25.0)
        self.AssignTreeToColor("resources\\Levels\\Billboards\\shrub2_cosa_nostra.tga", (255, 255, 0), 1.0,1.8, 0, 25.0)
        self.AssignTreeToColor("resources\\Levels\\Billboards\\pinetree_cosa_nostra.tga", (0, 0, 255), 2.0,3.0, 1, 25.0)
        self.AssignTreeToColor("resources\\Levels\\Billboards\\shrub_cosa_nostra.tga", (255, 255, 255), 1.0,1.8, 0, 25.0)        
        self.PlaceTrees()
        
        import Level10_features
        Level10_features.setup(self)
        
        fmod = .015
        # static cameras
        #self.AddStaticCamera("Static 1", (17.7, 11, 40), (.367, -.576), fmod*50)
        self.AddStaticCamera("Static 1", (21.8, 16.09, 111.57), (.03, 1.67), math.pi / 4)
        self.AddStaticCamera("Static 2", (11, 25.4, 65), (.025, 2.14), math.pi / 4)
        self.AddStaticCamera("Static 3", (104, 23, 59), (.175, 5.615), math.pi / 4)
        self.AddStaticCamera("Static 4", (41.27, 20, 11.72), (.18, 6.77), math.pi / 4)
        
        # watch camera
        self.AddWatchCamera("Watch 1", (20, 28, 85), (2.0, 15.0, fmod*40, fmod*25))
        self.AddWatchCamera("Watch 2", (67, 18, 78), (2.0, 30.0, fmod*60, fmod*25))
        self.AddWatchCamera("Watch 3", (106, 20, 69), (2.0, 30.0, fmod*60, fmod*25))

            
Levels.register(Level10)