Advertisement
Guest User

Untitled

a guest
Feb 3rd, 2014
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
F# 1.13 KB | None | 0 0
  1. open System.Linq;
  2. open System.Text;
  3. open System;
  4. open SFML.Graphics;
  5. open SFML.Window;
  6.  
  7. type ClientEvents() =
  8.     let onUpdate = new Event<_>()
  9.     let onDraw = new Event<_>()
  10.  
  11.     [<CLIEvent>]
  12.     member this.OnUpdate = onUpdate.Publish
  13.     [<CLIEvent>]
  14.     member this.OnDraw = onDraw.Publish
  15.  
  16.     member this.Trigger() =
  17.         onUpdate.Trigger
  18.         |>onDraw.Trigger
  19.  
  20. let Events = new ClientEvents()
  21. let Window = new RenderWindow(new VideoMode((uint32)400,(uint32)400),"FS SFML TEST")
  22.  
  23. type Test() =
  24.     member this.Sprite = new Sprite(new Texture("Test.png"))
  25.     member this.Load() =                
  26.         Events.OnDraw.Add(fun dr -> this.Sprite.Draw(Window, RenderStates.Default))
  27.         this.Sprite.Position = new Vector2f((float32)300,(float32)300) // So.. this will not work obviously.
  28.  
  29. [<EntryPoint>]
  30. let main argv =
  31.     let cB = (byte)100
  32.     let test = new Test()
  33.     ignore(test.Load())
  34.  
  35.     let MainLoop() =
  36.         Window.Clear(new Color(cB,cB,cB))
  37.         Window.DispatchEvents()
  38.         Events.Trigger()
  39.         Window.Display()
  40.        
  41.     while Window.IsOpen() do
  42.         MainLoop();
  43.     0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement