Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Imports System.Collections.Generic
- Imports System.Drawing
- Imports System.IO
- Imports System.Net
- Imports Microsoft.Xna.Framework
- Imports Microsoft.Xna.Framework.Graphics
- Public Class Game1
- Inherits Game
- Public Sprite As New Dictionary(Of String, Texture2D)
- Public Audio As New Dictionary(Of String, Object)
- Public Text As New Dictionary(Of String, Object)
- Public Screen As SpriteBatch
- Public Graphics As GraphicsDeviceManager
- Public Sub New()
- MyBase.New()
- Graphics = New GraphicsDeviceManager(Me)
- PreferredBackBufferResolution = {1280, 480}
- End Sub
- Protected Overrides Sub Initialize()
- Screen = New SpriteBatch(GraphicsDevice)
- MyBase.Initialize()
- End Sub
- 'LoadSpriteFromFile("Pikachu", "C:\Users\Timothy Filbert\Desktop\giphy.gif") 'Works
- 'LoadSpriteFromURL("Pikachu", "http://pldh.net/media/pokemon/gen3/rusa_back/025.png") 'Works
- 'LoadSpriteFrimBitmap("Pikachu", New Bitmap("C:\Users\Timothy Filbert\Desktop\giphy.gif")) 'Works
- 'Using sr As New StreamReader("C:\Users\Timothy Filbert\Desktop\giphy.gif") : LoadSpriteFromStream("Pikachu", sr.BaseStream) : End Using 'Works
- Protected Overrides Sub Update(gameTime As GameTime)
- GameLogic(gameTime)
- MyBase.Update(gameTime)
- End Sub
- Protected Overrides Sub Draw(gameTime As GameTime)
- MyBase.Draw(gameTime)
- End Sub
- Public Property PreferredBackBufferResolution() As Integer()
- Get
- Return {Graphics.PreferredBackBufferWidth, Graphics.PreferredBackBufferHeight}
- End Get
- Set(value As Integer())
- Graphics.PreferredBackBufferWidth = value(0)
- Graphics.PreferredBackBufferHeight = value(1)
- Graphics.ApplyChanges()
- End Set
- End Property
- Public Sub LoadSpriteFromFile(ByVal Name As String, ByVal Path As String)
- Using sr As New StreamReader(Path)
- If Not Sprite.ContainsKey(Name) Then Sprite.Add(Name, Texture2D.FromStream(GraphicsDevice, sr.BaseStream))
- End Using
- End Sub
- Public Sub LoadSpriteFromStream(ByVal Name As String, ByVal Stream As Stream)
- Using Stream
- If Not Sprite.ContainsKey(Name) Then Sprite.Add(Name, Texture2D.FromStream(GraphicsDevice, Stream))
- Stream.Close()
- End Using
- End Sub
- Public Sub LoadSpriteFromURL(ByVal Name As String, ByVal URL As String)
- Using wc As New WebClient
- Using ms As New MemoryStream(wc.DownloadData(URL))
- If Not Sprite.ContainsKey(Name) Then Sprite.Add(Name, Texture2D.FromStream(GraphicsDevice, ms))
- ms.Close()
- End Using
- End Using
- End Sub
- Public Sub LoadSpriteFrimBitmap(ByVal Name As String, ByVal Image As Bitmap)
- Using ms As New MemoryStream
- Using Image
- Image.Save(ms, Imaging.ImageFormat.Png)
- If Not Sprite.ContainsKey(Name) Then Sprite.Add(Name, Texture2D.FromStream(GraphicsDevice, ms))
- End Using
- ms.Close()
- End Using
- End Sub
- Public Sub UnloadSprite(ByVal Name As String)
- If Sprite.ContainsKey(Name) Then
- Sprite(Name).Dispose()
- Sprite.Remove(Name)
- End If
- End Sub
- Public Sub ClearSprites()
- For Each s As KeyValuePair(Of String, Texture2D) In Sprite : s.Value.Dispose() : Next
- Sprite.Clear()
- End Sub
- Public Sub DrawSprite(ByVal Name As String, ByVal X As Integer, ByVal Y As Integer, Optional ByVal Opacity As Single = 1.0)
- Screen.Draw(Sprite(Name), New Vector2(X, Y), Microsoft.Xna.Framework.Color.White * Opacity)
- End Sub
- Public Sub DrawSprite(ByVal Name As String, ByVal X As Integer, ByVal Y As Integer, ByVal Color As Microsoft.Xna.Framework.Color, Optional ByVal Opacity As Single = 1.0)
- Screen.Draw(Sprite(Name), New Vector2(X, Y), Color * Opacity)
- End Sub
- Public Sub DrawSprite(ByVal Name As String, ByVal X As Integer, ByVal Y As Integer, ByVal W As Integer, ByVal H As Integer, Optional ByVal Opacity As Single = 1.0)
- Screen.Draw(Sprite(Name), New Microsoft.Xna.Framework.Rectangle(X, Y, W, H), Microsoft.Xna.Framework.Color.White * Opacity)
- End Sub
- Public Sub DrawSprite(ByVal Name As String, ByVal X As Integer, ByVal Y As Integer, ByVal W As Integer, ByVal H As Integer, ByVal Color As Microsoft.Xna.Framework.Color, Optional ByVal Opacity As Single = 1.0)
- Screen.Draw(Sprite(Name), New Microsoft.Xna.Framework.Rectangle(X, Y, W, H), Color * Opacity)
- End Sub
- End Class
Advertisement
Add Comment
Please, Sign In to add comment