Guest User

Untitled

a guest
May 14th, 2018
157
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <!--Save as html file-->
  2. <html>
  3. <head>
  4. <link rel="icon"
  5. type="image/png"
  6. href="favicon.png">
  7. <title>flickgame.org</title>
  8. <style>
  9.  
  10. #header h1 {
  11. padding:0;
  12. margin:0;
  13. line-height: 40px;
  14. }
  15. #header {
  16. position:absolute;
  17. left:0px;
  18. right:0px;
  19. top:0px;
  20. height:40px;
  21. background-color: black;
  22. color:white;
  23. text-align: center;
  24. padding: 0px;
  25. margin:0px;
  26. border:0px;
  27. }
  28.  
  29. a {
  30. color:white;
  31. }
  32.  
  33. #content {
  34. position: absolute;
  35. top:40px;
  36. bottom:30px;
  37. left:0px;
  38. right:0px;
  39. background-color: white;
  40. text-align: center;
  41. padding:0;
  42. margin:0;
  43. }
  44.  
  45.  
  46. #content canvas {
  47. top:0;
  48. bottom:0;
  49. left:0;
  50. right:0;
  51. padding: 0;
  52. margin:0;
  53. }
  54. #hackLink {
  55. position: absolute;
  56. right:10px;
  57. float: right;
  58. }
  59.  
  60. #homelink {
  61. float: center;
  62. }
  63. #footer {
  64. position:absolute;
  65. left:0px;
  66. right:0px;
  67. bottom:0px;
  68. height:30px;
  69. margin:0;
  70. padding:0;
  71. background-color: black;
  72. color:white;
  73. text-align: center;
  74. padding: 0;
  75. line-height: 30px;
  76. }
  77. </style>
  78. <script>
  79.  
  80. <!--__EmbedBegin__-->
  81. var embeddedDat="%7B%22gameLink%22:%22www.flickgame.org%22,%22canvasses%22:%5B%5B65,%220%22,12,%22f%22,5,%220%22,7,%22f%22,3,%220%22,9,%22f%22,6,%220%22,53,%22f%22,64,%220%22,12,%22f%22,4,%220%22,8,%22f%22,3,%220%22,8,%22f%22,9,%220%22,52,%22f%22,63,%220%22,13,%22f%22,3,%220%22,9,%22f%22,3,%220%22,6,%22f%22,11,%220%22,52,%22f%22,62,%220%22,13,%22f%22,3,%220%22,9,%22f%22,3,%220%22,5,%22f%22,6,%220%22,5,%22f%22,3,%220%22,51,%22f%22,61,%220%22,14,%22f%22,3,%220%22,9,%22f%22,3,%220%22,4,%22f%22,5,%220%22,7,%22f%22,3,%220%22,51,%22f%22,60,%220%22,14,%22f%22,3,%220%22,9,%22f%22,3,%220%22,4,%22f%22,4,%220%22,10,%22f%22,3,%220%22,50,%22f%22,59,%220%22,14,%22f%22,3,%220%22,9,%22f%22,3,%220%22,5,%22f%22,3,%220%22,11,%22f%22,3,%220%22,8,%22f%22,1,%220%22,41,%22f%22,58,%220%22,14,%22f%22,6,%220%22,7,%22f%22,3,%220%22,4,%22f%22,3,%220%22,12,%22f%22,3,%220%22,7,%22f%22,3,%220%22,40,%22f%22,57,%220%22,14,%22f%22,8,%220%22,4,%22f%22,4,%220%22,5,%22f%22,3,%220%22,12,%22f%22,3,%220%22,6,%22f%22,4,%220%22,40,%22f%22,56,%220%22,14,%22f%22,3,%220%22,1,%22f%22,6,%220%22,2,%22f%22,4,%220%22,5,%22f%22,3,%220%22,13,%22f%22,3,%220%22,5,%22f%22,5,%220%22,9,%22f%22,1,%220%22,30,%22f%22,55,%220%22,13,%22f%22,4,%220%22,6,%22f%22,7,%220%22,5,%22f%22,3,%220%22,14,%22f%22,3,%220%22,4,%22f%22,6,%220%22,6,%22f%22,5,%220%22,6,%22f%22,2,%220%22,21,%22f%22,54,%220%22,13,%22f%22,4,%220%22,8,%22f%22,4,%220%22,6,%22f%22,3,%220%22,15,%22f%22,3,%220%22,3,%22f%22,7,%220%22,4,%22f%22,7,%220%22,5,%22f%22,4,%220%22,20,%22f%22,53,%220%22,12,%22f%22,5,%220%22,10,%22f%22,3,%220%22,6,%22f%22,3,%220%22,14,%22f%22,3,%220%22,3,%22f%22,4,%220%22,1,%22f%22,3,%220%22,3,%22f%22,8,%220%22,4,%22f%22,6,%220%22,19,%22f%22,52,%220%22,12,%22f%22,4,%220%22,11,%22f%22,3,%220%22,6,%22f%22,3,%220%22,15,%22f%22,3,%220%22,2,%22f%22,4,%220%22,2,%22f%22,3,%220%22,1,%22f%22,5,%220%22,1,%22f%22,3,%220%22,5,%22f%22,3,%220%22,1,%22f%22,3,%220%22,18,%22f%22,51,%220%22,12,%22f%22,4,%220%22,10,%22f%22,4,%220%22,7,%22f%22,3,%220%22,14,%22f%22,3,%220%22,2,%22f%22,3,%220%22,4,%22f%22,7,%220%22,3,%22f%22,3,%220%22,4,%22f%22,3,%220%22,3,%22f%22,3,%220%22,17,%22f%22,50,%220%22,14,%22f%22,1,%220%22,9,%22f%22,6,%220%22,8,%22f%22,3,%220%22,14,%22f%22,3,%220%22,1,%22f%22,3,%220%22,5,%22f%22,6,%220%22,4,%22f%22,3,%220%22,3,%22f%22,3,%220%22,5,%22f%22,3,%220%22,16,%22f%22,49,%220%22,24,%22f%22,6,%220%22,8,%22f%22,3,%220%22,14,%22f%22,4,%220%22,1,%22f%22,3,%220%22,5,%22f%22,4,%220%22,6,%22f%22,3,%220%22,3,%22f%22,3,%220%22,6,%22f%22,4,%220%22,14,%22f%22,48,%220%22,26,%22f%22,3,%220%22,10,%22f%22,3,%220%22,13,%22f%22,4,%220%22,1,%22f%22,3,%220%22,7,%22f%22,2,%220%22,6,%22f%22,3,%220%22,3,%22f%22,3,%220%22,8,%22f%22,4,%220%22,2,%22f%22,1,%220%22,10,%22f%22,47,%220%22,40,%22f%22,3,%220%22,12,%22f%22,3,%220%22,3,%22f%22,3,%220%22,15,%22f%22,3,%220%22,3,%22f%22,3,%220%22,9,%22f%22,2,%220%22,2,%22f%22,3,%220%22,9,%22f%22,46,%220%22,40,%22f%22,3,%220%22,11,%22f%22,4,%220%22,4,%22f%22,3,%220%22,14,%22f%22,3,%220%22,4,%22f%22,3,%220%22,13,%22f%22,3,%220%22,9,%22f%22,45,%220%22,41,%22f%22,3,%220%22,2,%22f%22,1,%220%22,6,%22f%22,5,%220%22,4,%22f%22,3,%220%22,14,%22f%22,3,%220%22,5,%22f%22,3,%220%22,13,%22f%22,3,%220%22,9,%22f%22,44,%220%22,43,%22f%22,1,%220%22,2,%22f%22,12,%220%22,5,%22f%22,3,%220%22,14,%22f%22,3,%220%22,4,%22f%22,3,%220%22,14,%22f%22,3,%220%22,9,%22f%22,43,%220%22,47,%22f%22,10,%220%22,6,%22f%22,3,%220%22,14,%22f%22,3,%220%22,4,%22f%22,4,%220%22,13,%22f%22,3,%220%22,10,%22f%22,42,%220%22,49,%22f%22,7,%220%22,7,%22f%22,3,%220%22,14,%22f%22,3,%220%22,5,%22f%22,3,%220%22,14,%22f%22,3,%220%22,10,%22f%22,41,%220%22,64,%22f%22,3,%220%22,14,%22f%22,3,%220%22,4,%22f%22,3,%220%22,15,%22f%22,3,%220%22,10,%22f%22,40,%220%22,64,%22f%22,3,%220%22,14,%22f%22,3,%220%22,5,%22f%22,4,%220%22,13,%22f%22,3,%220%22,11,%22f%22,39,%220%22,64,%22f%22,3,%220%22,14,%22f%22,3,%220%22,5,%22f%22,6,%220%22,12,%22f%22,3,%220%22,11,%22f%22,38,%220%22,64,%22f%22,3,%220%22,15,%22f%22,3,%220%22,4,%22f%22,3,%220%22,1,%22f%22,3,%220%22,11,%22f%22,3,%220%22,12,%22f%22,37,%220%22,64,%22f%22,4,%220%22,14,%22f%22,3,%220%22,4,%22f%22,3,%220%22,3,%22f%22,3,%220%22,10,%22f%22,3,%220%22,12,%22f%22,36,%220%22,66,%22f%22,2,%220%22,15,%22f%22,3,%220%22,4,%22f%22,3,%220%22,4,%22f%22,3,%220%22,9,%22f%22,3,%220%22,3,%22f%22,3,%220%22,6,%22f%22,35,%220%22,84,%22f%22,3,%220%22,3,%22f%22,3,%220%22,5,%22f%22,4,%220%22,7,%22f%22,3,%220%22,3,%22f%22,5,%220%22,5,%22f%22,34,%220%22,85,%22f%22,3,%220%22,2,%22f%22,3,%220%22,7,%22f%22,2,%220%22,8,%22f%22,3,%220%22,2,%22f%22,6,%220%22,5,%22f%22,33,%220%22,85,%22f%22,3,%220%22,2,%22f%22,3,%220%22,17,%22f%22,12,%220%22,5,%22f%22,32,%220%22,86,%22f%22,3,%220%22,2,%22f%22,4,%220%22,15,%22f%22,9,%220%22,1,%22f%22,3,%220%22,5,%22f%22,31,%220%22,86,%22f%22,4,%220%22,2,%22f%22,5,%220%22,14,%22f%22,7,%220%22,3,%22f%22,3,%220%22,5,%22f%22,30,%220%22,88,%22f%22,2,%220%22,4,%22f%22,6,%220%22,12,%22f%22,6,%220%22,4,%22f%22,3,%220%22,5,%22f%22,29,%220%22,98,%22f%22,5,%220%22,9,%22f%22,6,%220%22,5,%22f%22,3,%220%22,5,%22f%22,28,%220%22,100,%22f%22,5,%220%22,8,%22f%22,6,%220%22,5,%22f%22,3,%220%22,5,%22f%22,27,%220%22,103,%22f%22,4,%220%22,7,%22f%22,5,%220%22,6,%22f%22,3,%220%22,5,%22f%22,26,%220%22,106,%22f%22,3,%220%22,6,%22f%22,4,%220%22,7,%22f%22,3,%220%22,4,%22f%22,26,%220%22,107,%22f%22,3,%220%22,5,%22f%22,5,%220%22,7,%22f%22,3,%220%22,3,%22f%22,26,%220%22,109,%22f%22,3,%220%22,4,%22f%22,4,%220%22,8,%22f%22,3,%220%22,3,%22f%22,26,%220%22,110,%22f%22,1,%220%22,6,%22f%22,2,%220%22,9,%22f%22,3,%220%22,2,%22f%22,26,%220%22,129,%22f%22,3,%220%22,1,%22f%22,3,%220%22,1,%22f%22,22,%220%22,130,%22f%22,6,%220%22,2,%22f%22,21,%220%22,131,%22f%22,5,%220%22,3,%22f%22,20,%220%22,132,%22f%22,4,%220%22,4,%22f%22,19,%220%22,133,%22f%22,3,%220%22,5,%22f%22,18,%220%22,135,%22f%22,1,%220%22,6,%22f%22,17,%220%22,143,%22f%22,16,%220%22,144,%22f%22,15,%220%22,145,%22f%22,14,%220%22,146,%22f%22,14,%220%22,146,%22f%22,13,%220%22,147,%22f%22,12,%220%22,148,%22f%22,11,%220%22,149,%22f%22,10,%220%22,150,%22f%22,9,%220%22,151,%22f%22,8,%220%22,152,%22f%22,7,%220%22,153,%22f%22,6,%220%22,154,%22f%22,5,%220%22,155,%22f%22,4,%220%22,156,%22f%22,3,%220%22,157,%22f%22,3,%220%22,157,%22f%22,2,%220%22,158,%22f%22,1,%220%22,5279,%22f%22%5D,%5B1,%22f%22,13,%22e%22,77,%22f%22,6,%220%22,65,%22f%22,13,%22e%22,75,%22f%22,8,%220%22,64,%22f%22,14,%22e%22,74,%22f%22,9,%220%22,64,%22f%22,15,%22e%22,72,%22f%22,10,%220%22,64,%22f%22,15,%22e%22,71,%22f%22,11,%220%22,64,%22f%22,16,%22e%22,69,%22f%22,12,%220%22,65,%22f%22,15,%22e%22,69,%22f%22,13,%220%22,65,%22f%22,15,%22e%22,69,%22f%22,13,%220%22,64,%22f%22,15,%22e%22,69,%22f%22,14,%220%22,62,%22f%22,16,%22e%22,69,%22f%22,15,%220%22,60,%22f%22,16,%22e%22,70,%22f%22,15,%220%22,60,%22f%22,16,%22e%22,70,%22f%22,15,%220%22,61,%22f%22,14,%22e%22,71,%22f%22,15,%220%22,60,%22f%22,15,%22e%22,72,%22f%22,15,%220%22,59,%22f%22,14,%22e%22,74,%22f%22,14,%220%22,59,%22f%22,14,%22e%22,75,%22f%22,13,%220%22,58,%22f%22,14,%22e%22,77,%22f%22,12,%220%22,58,%22f%22,15,%22e%22,76,%22f%22,12,%220%22,57,%22f%22,17,%22e%22,75,%22f%22,13,%220%22,56,%22f%22,19,%22e%22,72,%22f%22,14,%220%22,56,%22f%22,20,%22e%22,69,%22f%22,16,%220%22,55,%22f%22,22,%22e%22,66,%22f%22,19,%220%22,54,%22f%22,22,%22e%22,64,%22f%22,22,%220%22,53,%22f%22,21,%22e%22,64,%22f%22,24,%220%22,52,%22f%22,21,%22e%22,62,%22f%22,27,%220%22,51,%22f%22,21,%22e%22,61,%22f%22,10,%220%22,3,%22f%22,15,%220%22,53,%22f%22,20,%22e%22,58,%22f%22,9,%220%22,6,%22f%22,17,%220%22,51,%22f%22,20,%22e%22,57,%22f%22,9,%220%22,7,%22f%22,18,%220%22,50,%22f%22,19,%22e%22,55,%22f%22,10,%220%22,10,%22f%22,18,%220%22,50,%22f%22,18,%22e%22,53,%22f%22,11,%220%22,12,%22f%22,19,%220%22,48,%22f%22,18,%22e%22,51,%22f%22,11,%220%22,15,%22f%22,18,%220%22,48,%22f%22,19,%22e%22,49,%22f%22,11,%220%22,17,%22f%22,17,%220%22,52,%22f%22,16,%22e%22,46,%22f%22,11,%220%22,19,%22f%22,16,%220%22,53,%22f%22,16,%22e%22,45,%22f%22,10,%220%22,23,%22f%22,13,%220%22,54,%22f%22,17,%22e%22,42,%22f%22,10,%220%22,26,%22f%22,11,%220%22,56,%22f%22,17,%22e%22,38,%22f%22,11,%220%22,29,%22f%22,9,%220%22,58,%22f%22,16,%22e%22,36,%22f%22,11,%220%22,32,%22f%22,7,%220%22,59,%22f%22,16,%22e%22,34,%22f%22,12,%220%22,33,%22f%22,5,%220%22,61,%22f%22,16,%22e%22,32,%22f%22,12,%220%22,101,%22f%22,15,%22e%22,32,%22f%22,11,%220%22,103,%22f%22,15,%22e%22,30,%22f%22,11,%220%22,105,%22f%22,14,%22e%22,29,%22f%22,11,%220%22,107,%22f%22,16,%22e%22,25,%22f%22,10,%220%22,109,%22f%22,18,%22e%22,22,%22f%22,11,%220%22,110,%22f%22,18,%22e%22,21,%22f%22,10,%220%22,114,%22f%22,16,%22e%22,19,%22f%22,10,%220%22,116,%22f%22,16,%22e%22,16,%22f%22,11,%220%22,118,%22f%22,14,%22e%22,2,%22c%22,14,%22f%22,11,%220%22,119,%22f%22,13,%22e%22,4,%22c%22,12,%22f%22,12,%220%22,120,%22f%22,11,%22e%22,5,%22c%22,11,%22f%22,13,%220%22,122,%22f%22,6,%22e%22,9,%22c%22,9,%22f%22,13,%220%22,124,%22f%22,5,%22e%22,9,%22c%22,8,%22f%22,12,%220%22,127,%22f%22,3,%22e%22,11,%22c%22,6,%22f%22,12,%220%22,129,%22f%22,1,%22e%22,13,%22c%22,4,%22f%22,11,%220%22,131,%22f%22,14,%22c%22,1,%22f%22,13,%220%22,133,%22f%22,13,%22c%22,13,%220%22,138,%22f%22,6,%22c%22,2,%220%22,1,%22c%22,13,%220%22,141,%22f%22,3,%22c%22,15,%220%22,147,%22f%22,12,%220%22,149,%22f%22,10,%220%22,151,%22f%22,7,%220%22,6318,%22f%22%5D,%5B1,%220%22,1,%221%22,10,%220%22,1,%221%22,1,%220%22,6,%221%22,24,%220%22,1,%221%22,116,%220%22,1,%221%22,10,%220%22,2,%221%22,4,%220%22,2,%221%22,2,%220%22,11,%221%22,6,%220%22,1,%221%22,4,%220%22,3,%221%22,114,%220%22,1,%221%22,10,%220%22,1,%221%22,4,%220%22,3,%221%22,5,%220%22,1,%221%22,9,%220%22,5,%221%22,4,%220%22,1,%221%22,2,%220%22,3,%221%22,15,%220%22,4,%22f%22,92,%220%22,1,%221%22,10,%220%22,5,%221%22,2,%220%22,1,%221%22,5,%220%22,1,%221%22,9,%220%22,1,%221%22,8,%220%22,1,%221%22,3,%220%22,2,%221%22,13,%220%22,7,%22f%22,91,%220%22,1,%221%22,10,%220%22,1,%221%22,6,%220%22,1,%221%22,5,%220%22,1,%221%22,9,%220%22,5,%221%22,4,%220%22,4,%221%22,13,%220%22,10,%22f%22,90,%220%22,1,%221%22,10,%220%22,1,%221%22,6,%220%22,1,%221%22,5,%220%22,1,%221%22,9,%220%22,1,%221%22,8,%220%22,1,%221%22,3,%220%22,1,%221%22,8,%220%22,16,%22f%22,88,%220%22,8,%221%22,3,%220%22,1,%221%22,6,%220%22,1,%221%22,5,%220%22,1,%221%22,9,%220%22,5,%221%22,4,%220%22,1,%221%22,4,%220%22,1,%221%22,1,%220%22,1,%221%22,1,%220%22,1,%221%22,1,%220%22,20,%22f%22,97,%220%22,1,%221%22,6,%220%22,1,%221%22,5,%220%22,1,%221%22,28,%220%22,23,%22f%22,137,%220%22,24,%22f%22,134,%220%22,19,%22f%22,3,%220%22,5,%22f%22,132,%220%22,18,%22f%22,3,%220%22,7,%22f%22,130,%220%22,18,%22f%22,2,%220%22,2,%22f%22,1,%220%22,8,%22f%22,127,%220%22,19,%22f%22,1,%220%22,4,%22f%22,6,%220%22,4,%22f%22,124,%220%22,19,%22f%22,3,%220%22,9,%22f%22,1,%220%22,4,%22f%22,122,%220%22,23,%22f%22,1,%220%22,10,%22f%22,1,%220%22,4,%22f%22,118,%220%22,17,%22f%22,2,%220%22,7,%22f%22,3,%220%22,8,%22f%22,1,%220%22,5,%22f%22,115,%220%22,20,%22f%22,5,%220%22,3,%22f%22,2,%220%22,9,%22f%22,1,%220%22,6,%22f%22,112,%220%22,12,%22f%22,4,%220%22,7,%22f%22,1,%220%22,3,%22f%22,2,%220%22,3,%22f%22,1,%220%22,8,%22f%22,1,%220%22,6,%22f%22,111,%220%22,13,%22f%22,1,%220%22,3,%22f%22,2,%220%22,5,%22f%22,1,%220%22,4,%22f%22,1,%220%22,4,%22f%22,1,%220%22,2,%22f%22,1,%220%22,4,%22f%22,1,%220%22,7,%22f%22,109,%220%22,14,%22f%22,1,%220%22,5,%22f%22,2,%220%22,3,%22f%22,1,%220%22,4,%22f%22,1,%220%22,5,%22f%22,3,%220%22,1,%22f%22,3,%220%22,10,%22f%22,106,%220%22,15,%22f%22,1,%220%22,7,%22f%22,1,%220%22,3,%22f%22,1,%220%22,3,%22f%22,1,%220%22,6,%22f%22,2,%220%22,1,%22f%22,1,%220%22,14,%22f%22,103,%220%22,16,%22f%22,1,%220%22,7,%22f%22,2,%220%22,3,%22f%22,2,%220%22,1,%22f%22,1,%220%22,26,%22f%22,99,%220%22,9,%22f%22,7,%220%22,3,%22f%22,1,%220%22,3,%22f%22,3,%220%22,1,%22f%22,1,%220%22,4,%22f%22,3,%220%22,29,%22f%22,94,%220%22,11,%22f%22,1,%220%22,5,%22f%22,1,%220%22,3,%22f%22,1,%220%22,2,%22f%22,1,%220%22,4,%22f%22,1,%220%22,38,%22f%22,91,%220%22,12,%22f%22,2,%220%22,4,%22f%22,1,%220%22,4,%22f%22,2,%220%22,5,%22f%22,1,%220%22,40,%22f%22,88,%220%22,14,%22f%22,1,%220%22,2,%22f%22,2,%220%22,5,%22f%22,2,%220%22,6,%22f%22,1,%220%22,41,%22f%22,85,%220%22,6,%22f%22,4,%220%22,5,%22f%22,1,%220%22,1,%22f%22,4,%220%22,4,%22f%22,1,%220%22,50,%22f%22,84,%220%22,6,%22f%22,1,%220%22,4,%22f%22,3,%220%22,2,%22f%22,1,%220%22,4,%22f%22,2,%220%22,3,%22f%22,1,%220%22,35,%22f%22,1,%220%22,14,%22f%22,83,%220%22,5,%22f%22,1,%220%22,4,%22f%22,2,%220%22,1,%22f%22,1,%220%22,2,%22f%22,1,%220%22,6,%22f%22,2,%220%22,1,%22f%22,2,%220%22,34,%22f%22,3,%220%22,13,%22f%22,82,%220%22,5,%22f%22,1,%220%22,2,%22f%22,2,%220%22,3,%22f%22,1,%220%22,3,%22f%22,1,%220%22,6,%22f%22,1,%220%22,39,%22f%22,3,%220%22,11,%22f%22,82,%220%22,4,%22f%22,2,%220%22,1,%22f%22,1,%220%22,4,%22f%22,2,%220%22,4,%22f%22,2,%220%22,44,%22f%22,1,%220%22,2,%22f%22,2,%220%22,10,%22f%22,82,%220%22,1,%22f%22,2,%220%22,3,%22f%22,1,%220%22,4,%22f%22,1,%220%22,6,%22f%22,1,%220%22,35,%22f%22,2,%220%22,3,%22f%22,3,%220%22,1,%22f%22,1,%220%22,3,%22f%22,1,%220%22,11,%22f%22,82,%220%22,1,%22f%22,1,%220%22,2,%22f%22,1,%220%22,4,%22f%22,1,%220%22,42,%22f%22,1,%220%22,8,%22f%22,1,%220%22,16,%22f%22,82,%220%22,1,%22f%22,1,%220%22,2,%22f%22,1,%220%22,4,%22f%22,1,%220%22,42,%22f%22,1,%220%22,8,%22f%22,2,%220%22,16,%22f%22,83,%220%22,7,%22f%22,1,%220%22,36,%22f%22,4,%220%22,3,%22f%22,6,%220%22,3,%22f%22,1,%220%22,17,%22f%22,83,%220%22,4,%22f%22,2,%220%22,41,%22f%22,1,%220%22,7,%22f%22,1,%220%22,22,%22f%22,86,%220%22,44,%22f%22,1,%220%22,6,%22f%22,1,%220%22,24,%22f%22,79,%220%22,38,%22f%22,3,%220%22,9,%22f%22,2,%220%22,4,%22f%22,1,%220%22,26,%22f%22,78,%220%22,39,%22f%22,1,%220%22,15,%22f%22,1,%220%22,29,%22f%22,75,%220%22,40,%22f%22,1,%220%22,2,%22f%22,2,%220%22,9,%22f%22,2,%220%22,31,%22f%22,74,%220%22,32,%22f%22,4,%220%22,4,%22f%22,2,%220%22,46,%22f%22,72,%220%22,28,%22f%22,4,%220%22,1,%22f%22,1,%220%22,1,%22f%22,1,%220%22,4,%22f%22,2,%220%22,47,%22f%22,72,%220%22,27,%22f%22,1,%220%22,3,%22f%22,2,%220%22,1,%22f%22,1,%220%22,54,%22f%22,71,%220%22,25,%22f%22,1,%220%22,1,%22f%22,1,%220%22,2,%22f%22,1,%220%22,3,%22f%22,1,%220%22,55,%22f%22,71,%220%22,24,%22f%22,3,%220%22,6,%22f%22,1,%220%22,13,%22f%22,2,%226%22,40,%22f%22,72,%220%22,17,%22f%22,5,%220%22,2,%22f%22,9,%220%22,13,%22f%22,1,%226%22,42,%22f%22,72,%220%22,17,%22f%22,1,%220%22,3,%22f%22,5,%220%22,17,%22f%22,2,%226%22,43,%22f%22,73,%220%22,17,%22f%22,2,%220%22,21,%22f%22,2,%226%22,46,%22f%22,74,%220%22,11,%22f%22,1,%220%22,5,%22f%22,1,%220%22,18,%22f%22,2,%226%22,48,%22f%22,74,%220%22,8,%22f%22,3,%220%22,7,%22f%22,1,%220%22,16,%22f%22,1,%226%22,51,%22f%22,74,%220%22,7,%22f%22,2,%220%22,2,%22f%22,2,%220%22,21,%22f%22,2,%226%22,5,%22f%22,3,%226%22,43,%22f%22,74,%220%22,7,%22f%22,3,%220%22,2,%22f%22,1,%220%22,22,%22f%22,5,%226%22,48,%22f%22,73,%220%22,6,%22f%22,1,%220%22,4,%22f%22,1,%220%22,25,%22f%22,2,%226%22,50,%22f%22,71,%220%22,6,%22f%22,1,%220%22,2,%22f%22,2,%220%22,28,%22f%22,1,%226%22,53,%22f%22,68,%220%22,6,%22f%22,2,%220%22,30,%22f%22,1,%226%22,55,%22f%22,67,%220%22,37,%22f%22,1,%226%22,57,%22f%22,66,%220%22,96,%22f%22,64,%220%22,98,%22f%22,63,%220%22,98,%22f%22,63,%220%22,98,%22f%22,62,%220%22,98,%22f%22,63,%220%22,98,%22f%22,62,%220%22,98,%22f%22,63,%220%22,42,%22f%22,2,%220%22,54,%22f%22,62,%220%22,41,%22f%22,2,%220%22,56,%22f%22,62,%220%22,39,%22f%22,3,%220%22,57,%22f%22,61,%220%22,39,%22f%22,1,%220%22,1,%22f%22,1,%220%22,60,%22f%22,59,%220%22,35,%22f%22,4,%220%22,2,%22f%22,1,%220%22,62,%22f%22,57,%220%22,41,%22f%22,1,%220%22,62,%22f%22,57,%220%22,41,%22f%22,1,%220%22,62,%22f%22,57,%220%22,103,%22f%22,59,%220%22,101,%22f%22,60,%220%22,100,%22f%22,61,%220%22,99,%22f%22,61,%220%22,98,%22f%22,63,%220%22,38,%22f%22,2,%226%22,57,%22f%22,64,%220%22,35,%22f%22,2,%226%22,58,%22f%22,65,%220%22,33,%22f%22,2,%226%22,1,%22f%22,2,%226%22,56,%22f%22,67,%220%22,32,%22f%22,1,%226%22,3,%22f%22,2,%226%22,54,%22f%22,68,%220%22,32,%22f%22,1,%226%22,4,%22f%22,2,%226%22,52,%22f%22,70,%220%22,37,%22f%22,1,%226%22,51,%22f%22,72,%220%22,87,%22f%22,75,%220%22,84,%22f%22,77,%220%22,81,%22f%22,81,%220%22,77,%22f%22,85,%220%22,73,%22f%22,89,%220%22,69,%22f%22,92,%220%22,66,%22f%22,95,%220%22,63,%22f%22,98,%220%22,61,%22f%22,100,%220%22,59,%22f%22,102,%220%22,58,%22f%22,103,%220%22,56,%22f%22,105,%220%22,55,%22f%22,107,%220%22,52,%22f%22,111,%220%22,48,%22f%22,115,%220%22,44,%22f%22,116,%220%22,42,%22f%22,119,%220%22,39,%22f%22,122,%220%22,37,%22f%22,35,%220%22%5D,%5B16000,%220%22%5D,%5B16000,%220%22%5D,%5B16000,%220%22%5D,%5B16000,%220%22%5D,%5B16000,%220%22%5D,%5B16000,%220%22%5D,%5B16000,%220%22%5D,%5B16000,%220%22%5D,%5B16000,%220%22%5D,%5B16000,%220%22%5D,%5B16000,%220%22%5D,%5B16000,%220%22%5D,%5B16000,%220%22%5D%5D,%22hyperlinks%22:%5B%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,%222%22%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,%223%22%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D,%5B0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0%5D%5D%7D";
  82. <!--__EmbedEnd__-->
  83.  
  84. function getUrlVars() {
  85. var vars = {};
  86. var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi,
  87. function(m,key,value) {
  88. vars[key] = value;
  89. });
  90. return vars;
  91. }
  92.  
  93. var urlVars = getUrlVars();
  94. if (!("frameCount" in urlVars)){
  95. urlVars["frameCount"]=1;
  96. }
  97. if (!("animationLength" in urlVars)){
  98. urlVars["animationLength"]=0.5;
  99. }
  100.  
  101. urlVars["frameCount"]=parseFloat(urlVars["frameCount"])
  102. urlVars["animationLength"]=parseFloat(urlVars["animationLength"])
  103. var frameCount=urlVars["frameCount"];
  104. var animationLength=urlVars["animationLength"];
  105.  
  106. if(urlVars["a"]==="1"){
  107. frameCount=8;
  108. animationLength=0.5;
  109. }
  110. var showAnimation = frameCount>1;
  111.  
  112.  
  113. var animating=false;
  114. var zoom=1;
  115. var currentIndex=0;
  116. function redraw(){
  117. console.log("resized "+window.innerWidth +"x"+window.innerHeight);
  118. mainCanvas.width=mainCanvasContainer.clientWidth;
  119. mainCanvas.height=mainCanvasContainer.clientHeight;
  120. mainCanvasCtx.width=mainCanvasContainer.clientWidth;
  121. mainCanvasCtx.height=mainCanvasContainer.clientHeight;
  122.  
  123. if (images.length>0){
  124.  
  125. mainCanvasCtx.imageSmoothingEnabled = false;
  126. mainCanvasCtx.mozImageSmoothingEnabled = false;
  127. mainCanvasCtx.oImageSmoothingEnabled = false;
  128. mainCanvasCtx.webkitImageSmoothingEnabled = false;
  129. mainCanvasCtx.msImageSmoothingEnabled = false;
  130.  
  131. var w = mainCanvasCtx.width;
  132. var h = mainCanvasCtx.height;
  133. var wd = w/160.0;
  134. var hd = h/100.0;
  135. zoom=1;
  136. if (wd<hd){
  137. zoom=wd;//Math.floor(wd);
  138. } else {
  139. zoom=hd;//Math.floor(hd);
  140. }
  141. if(zoom<1){
  142. zoom=1;
  143. }
  144. var dx=(w-160*zoom)/2;
  145. var dy=(h-100*zoom)/2;
  146. mainCanvasCtx.fillStyle="#000000";
  147. mainCanvasCtx.fillRect(0,0,w,h);
  148. if (curCanvasToDraw===null){
  149. mainCanvasCtx.drawImage(images[currentIndex],0,0,160,100,dx,dy,160*zoom,100*zoom);
  150. } else {
  151. mainCanvasCtx.drawImage(curCanvasToDraw,0,0,160,100,dx,dy,160*zoom,100*zoom);
  152. }
  153. } else {
  154. mainCanvasCtx.fillStyle="#ff0000";
  155. mainCanvasCtx.fillRect(0,0,mainCanvas.width/2,mainCanvas.height/2);
  156. mainCanvasCtx.fillStyle="#00ff00";
  157. mainCanvasCtx.fillRect(mainCanvas.width/2,0,mainCanvas.width/2,mainCanvas.height/2);
  158. mainCanvasCtx.fillStyle="#ff00ff";
  159. mainCanvasCtx.fillRect(0,mainCanvas.height/2,mainCanvas.width/2,mainCanvas.height/2);
  160. mainCanvasCtx.fillStyle="#00ffff";
  161. mainCanvasCtx.fillRect(mainCanvas.width/2,mainCanvas.height/2,mainCanvas.width/2,mainCanvas.height/2);
  162. }
  163. }
  164.  
  165.  
  166. function getCoords(e) {
  167. var x,y;
  168. if(e.offsetX) {
  169. x = e.offsetX;
  170. y = e.offsetY;
  171. }
  172. else if(e.layerX) {
  173. x = e.layerX;
  174. y = e.layerY;
  175. }
  176.  
  177. return [x,y];
  178. }
  179.  
  180. var target=0;
  181.  
  182. function printNonZeros(a,stack){
  183. var count=0;
  184. for (var i=0;i<160;i++){
  185. for (var j=0;j<100;j++){
  186. if (a[j][i]!==null)
  187. count++;
  188. }
  189. }
  190. window.console.log(count + " non-zero entries.");
  191. window.console.log("stack length " + stack.length+".");
  192. }
  193.  
  194. var hex=['0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f']
  195.  
  196. function calcHeatmap(cal,col,fromCal){
  197. var map = []
  198. var stack = []
  199. var c = hex[col]
  200.  
  201. //initialize
  202. for (var j=0;j<100;j++){
  203. for (var i=0;i<160;i++){
  204. if (cal[i+160*j]===c){
  205. var entry = [0,i,j]
  206. map.push([0,i,j])
  207. stack.push([i,j,0,i,j])
  208. } else {
  209. map.push(null)
  210. }
  211. }
  212. }
  213.  
  214. //should replace this with a center of mass calculation from the old one
  215. if (stack.length===0){
  216. var cx=0;
  217. var cy=0;
  218. var count=0;
  219. for (var i=0;i<160;i++){
  220. for (var j=0;j<100;j++){
  221. if (fromCal[i+160*j]===c){
  222. cx+=i;
  223. cy+=j;
  224. count++;
  225. }
  226. }
  227. }
  228. if (count>0){
  229. cx=Math.round(cx/count);
  230. cy=Math.round(cy/count);
  231. for (var j=0;j<100;j++){
  232. for (var i=0;i<160;i++){
  233. map[i+160*j]=[0,cx,cy];
  234. }
  235. }
  236. }
  237. }
  238.  
  239. //propagate
  240. while(stack.length>0){
  241. var entry = stack.shift();
  242. //[fromx,fromy,dist,tox,toy]
  243. var x0=entry[0];
  244. var y0=entry[1];
  245. var d0=entry[2];
  246. var xtarget=entry[3];
  247. var ytarget=entry[4];
  248. var d1=d0+1;
  249. var neighbours = [[x0-1,y0],[x0+1,y0],[x0,y0-1],[x0,y0+1]];
  250. for (var i=0;i<4;i++){
  251. var n = neighbours[i];
  252. var nx=n[0];
  253. var ny=n[1];
  254. if (nx<0||ny<0||nx>=160||ny>=100){
  255. continue;
  256. }
  257. var existing = map[nx+160*ny];
  258. if (existing===null||d1<existing[0]){
  259. map[nx+160*ny]=[d1,xtarget,ytarget]
  260. stack.push([nx,ny,d1,xtarget,ytarget])
  261. }
  262. }
  263. }
  264.  
  265. return map;
  266. }
  267.  
  268. function generateParticleMotions(sourceCanvas,targetHeatMap,colIndex,particles,reverse){
  269. if (reverse){
  270. var c = hex[colIndex];
  271. for (var i=0;i<160;i++){
  272. for (var j=0;j<100;j++){
  273. var pixel = sourceCanvas[i+160*j];
  274. if (pixel===c){
  275. //[d,tx,ty]
  276. var target = targetHeatMap[i+160*j];
  277. var tx = target[1];
  278. var ty = target[2];
  279. if (i!==tx||j!==ty)
  280. particles.push([tx,ty,i,j])
  281. }
  282. }
  283. }
  284. } else {
  285. var c = hex[colIndex];
  286. for (var i=0;i<160;i++){
  287. for (var j=0;j<100;j++){
  288. var pixel = sourceCanvas[i+160*j];
  289. if (pixel===c){
  290. //[d,tx,ty]
  291. var target = targetHeatMap[i+160*j];
  292. var tx = target[1];
  293. var ty = target[2];
  294. particles.push([i,j,tx,ty])
  295. }
  296. }
  297. }
  298. }
  299. }
  300.  
  301. function generateFrame(sourceImage,particleMap,progress){
  302. var frame = [];
  303. for (var j=0;j<100;j++){
  304. for (var i=0;i<160;i++){
  305. frame.push(sourceImage[i+160*j]);
  306. }
  307. }
  308.  
  309. for (var cIndex=0;cIndex<particleMap.length;cIndex++){
  310. var c = hex[cIndex]
  311. var particles = particleMap[cIndex]
  312. for (var i=0;i<particles.length;i++){
  313. var p = particles[i]
  314. var x0=p[0]
  315. var y0=p[1]
  316. var x1=p[2]
  317. var y1=p[3]
  318. var dx=x1-x0
  319. var dy=y1-y0
  320. if (dx!==0||dy!==0){
  321. // var xt = Math.round(x0+progress*dx+Math.random()*0.5-0.25)
  322. // var yt = Math.round(y0+progress*dy+Math.random()*0.5-0.25)
  323. var xt = Math.round(x0+progress*dx)
  324. var yt = Math.round(y0+progress*dy)
  325. frame[xt+160*yt]=c;
  326. }
  327. }
  328. }
  329. return frame;
  330. }
  331.  
  332. function calcTransitionGrids(oldCanvas,newCanvas){
  333. //generate 32 canvasses, for each color, for each direction
  334. var particleMaps = []
  335. for (var i=0;i<16;i++){
  336. var forwardHeatmap = calcHeatmap(newCanvas,i,oldCanvas);
  337. window.console.log("generated forward"+i);
  338. var backwardHeatmap = calcHeatmap(oldCanvas,i,newCanvas);
  339. window.console.log("generated backward"+i);
  340. var particles=[]
  341. var particleMotionsForward = generateParticleMotions(oldCanvas,forwardHeatmap,i,particles,false);
  342. window.console.log("generated forward particles"+i);
  343. var particleMotionsBackward = generateParticleMotions(newCanvas,backwardHeatmap,i,particles,true);
  344. window.console.log("generated backwards particles"+i);
  345. particleMaps.push(particles);
  346. }
  347. var frames=[];
  348. frames.push(oldCanvas)
  349. for (var i=1;i<frameCount;i++){
  350. var frame = generateFrame(oldCanvas,particleMaps,i/frameCount)
  351. frames.push(frame);
  352. }
  353. frames.push(newCanvas)
  354. return frames;
  355. }
  356.  
  357. var curCanvasToDraw=null;
  358. var curAnimationFrames=null;
  359. function transition(oldIndex,newIndex){
  360. var oldCanvas = gameState.imageDats[oldIndex];
  361. var newCanvas = gameState.imageDats[newIndex];
  362. var frames = calcTransitionGrids(oldCanvas,newCanvas);
  363. curAnimationFrames = frames;
  364. return frames;
  365. }
  366.  
  367. function drawNextFrame(){
  368. curCanvasToDraw=printCanvas(curAnimationFrames[animationIndex])[0];
  369. redraw();
  370. animationIndex++;
  371. if (animationIndex<curAnimationFrames.length){
  372. setTimeout(drawNextFrame,1000*animationLength/frameCount);
  373. } else {
  374. animating=false;
  375. }
  376. }
  377. var animationIndex=1;
  378. function doAnimation(){
  379. animating=true;
  380. animationIndex=1;
  381. drawNextFrame();
  382. }
  383.  
  384. function mouseDown(e){
  385. mouseMove(e);
  386. if (target>0){
  387. if (showAnimation){
  388. transition(currentIndex,target-1);
  389. currentIndex=target-1;
  390. doAnimation();
  391. } else {
  392. currentIndex=target-1;
  393. redraw();
  394. }
  395. mouseMove(e);
  396. }
  397. }
  398. function mouseMove(e){
  399.  
  400. if (gameState==null){
  401. return;
  402. }
  403. var coords = getCoords(e);
  404.  
  405. var w = mainCanvasCtx.width;
  406. var h = mainCanvasCtx.height;
  407. var wd = w/160.0;
  408. var hd = h/100.0;
  409. zoom=1;
  410. if (wd<hd){
  411. zoom=wd;//Math.floor(wd);
  412. } else {
  413. zoom=hd;//Math.floor(hd);
  414. }
  415. if(zoom<1){
  416. zoom=1;
  417. }
  418. var dx=(w-160*zoom)/2;
  419. var dy=(h-100*zoom)/2;
  420.  
  421. var x=Math.floor((coords[0]-dx)/zoom);
  422. var y=Math.floor((coords[1]-dy)/zoom);
  423. target=0;
  424. if(x>=0&&x<160&&y>=0&&y<100) {
  425. var ch = gameState.imageDats[currentIndex][x+160*y];
  426. var colIndex = parseInt(ch,16);
  427. target=gameState.hyperlinks[currentIndex][colIndex];
  428.  
  429. if (gameState.hyperlinks[currentIndex][colIndex]!=0) {
  430. mainCanvas.style.cursor="pointer";
  431. } else {
  432. mainCanvas.style.cursor="default";
  433. }
  434.  
  435. } else {
  436. mainCanvas.style.cursor="default";
  437. }
  438.  
  439. }
  440.  
  441. var mainCanvas;
  442. var mainCanvasCtx;
  443. var mainCanvasContainer;
  444. function init(){
  445. window.addEventListener('resize', redraw, false);
  446.  
  447.  
  448. mainCanvas=document.getElementById("mainCanvas");
  449. mainCanvasCtx=mainCanvas.getContext("2d");
  450. mainCanvasContainer=document.getElementById("content");
  451.  
  452. mainCanvas.addEventListener('mousemove', mouseMove,false);
  453. mainCanvas.addEventListener('mousedown', mouseDown,false);
  454.  
  455. redraw();
  456.  
  457. getData();
  458.  
  459. }
  460.  
  461. var aurl = document.createElement('a');
  462. function qualifyURL(url) {
  463. aurl.href = url;
  464. return aurl.href;
  465. }
  466.  
  467. var gameState;
  468. function loadState(code){
  469. gameState=JSON.parse(code);
  470. }
  471.  
  472. function getParameterByName(name) {
  473. name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
  474. var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
  475. results = regex.exec(location.search);
  476. return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
  477. }
  478.  
  479.  
  480. function strip_http(url) {
  481. url = url.replace(/^https?:\/\//,'');
  482. return url;
  483. }
  484.  
  485. function getData(){
  486. if (embeddedDat[0]!=='_'){
  487. embeddedDat=decodeURI(embeddedDat);
  488. loadState(embeddedDat);
  489.  
  490. var homepage=gameState.gameLink;
  491. var homepageLink = document.getElementById("homeLink");
  492. homepageLink.innerHTML=strip_http(homepage);
  493. if (!homepage.match(/^https?:\/\//)) {
  494. homepage = "http://" + homepage;
  495. }
  496. homepageLink.href = homepage;
  497.  
  498. renderImages();
  499. return;
  500. }
  501. var id = getParameterByName("p").replace(/[\\\/]/,"");
  502. if (id===null||id.length===0) {
  503. console.log("No ID specified in URL.")
  504. return;
  505. }
  506.  
  507. var githubURL = 'https://api.github.com/gists/'+id;
  508.  
  509. var githubHTTPClient = new XMLHttpRequest();
  510. githubHTTPClient.open('GET', githubURL);
  511. githubHTTPClient.onreadystatechange = function() {
  512. if(githubHTTPClient.readyState!=4) {
  513. return;
  514. }
  515. var result = JSON.parse(githubHTTPClient.responseText);
  516. if (githubHTTPClient.status===403) {
  517. console.log(result.message);
  518. } else if (githubHTTPClient.status!==200&&githubHTTPClient.status!==201) {
  519. console.log("HTTP Error "+ githubHTTPClient.status + ' - ' + githubHTTPClient.statusText);
  520. }
  521. var result = JSON.parse(githubHTTPClient.responseText);
  522. var code=result["files"]["game.txt"]["content"];
  523. console.log(code);
  524. loadState(code);
  525.  
  526. var homepage=gameState.gameLink;
  527. var homepageLink = document.getElementById("homeLink");
  528. homepageLink.innerHTML=strip_http(homepage);
  529. if (!homepage.match(/^https?:\/\//)) {
  530. homepage = "http://" + homepage;
  531. }
  532. homepageLink.href = homepage;
  533.  
  534. var hacklink = document.getElementById("hackLink");
  535.  
  536. var url = "index.html?p="+id;
  537. url=qualifyURL(url);
  538. hacklink.href=url;
  539. hacklink.innerHTML="&sdotb; edit";
  540. renderImages();
  541. }
  542. githubHTTPClient.setRequestHeader("Content-type","application/x-www-form-urlencoded");
  543. githubHTTPClient.send();
  544. }
  545.  
  546.  
  547. function RLE_decode(encoded) {
  548. var output = "";
  549. for (var i=0;i<encoded.length;i+=2) {
  550. var count = encoded[i];
  551. var ch = encoded[i+1];
  552. for (var j=0;j<count;j++){
  553. output+=ch;
  554. }
  555. }
  556. return output;
  557. }
  558.  
  559. var colorPalette = [
  560. "#140c1c",
  561. "#442434",
  562. "#30346d",
  563. "#4e4a4e",
  564. "#854c30",
  565. "#346524",
  566. "#d04648",
  567. "#757161",
  568. "#597dce",
  569. "#d27d2c",
  570. "#8595a1",
  571. "#6daa2c",
  572. "#d2aa99",
  573. "#6dc2ca",
  574. "#dad45e",
  575. "#deeed6"
  576. ];
  577.  
  578. var images = new Array();
  579. var imageCtxts = new Array();
  580.  
  581. function printCanvas(descriptionString){
  582. var canvas = document.createElement('canvas');
  583. canvas.width="160";
  584. canvas.height="100";
  585. var ctx=canvas.getContext("2d");
  586. for (var j=0;j<descriptionString.length;j++){
  587. var x = j%160;
  588. var y = Math.floor(j/160);
  589. var ch=descriptionString[j];
  590. var colIndex = parseInt(ch,16);
  591. ctx.fillStyle=colorPalette[colIndex];
  592. ctx.fillRect(x,y,1,1);
  593. }
  594. return [canvas,ctx];
  595. }
  596.  
  597. function renderImages(){
  598. gameState.imageDats = new Array();
  599.  
  600. for (var i=0;i<16;i++){
  601. var descriptionArray = gameState.canvasses[i];
  602. var descriptionString = RLE_decode(descriptionArray);
  603.  
  604. var canvas_context=printCanvas(descriptionString);
  605. var canvas=canvas_context[0];
  606. var ctx=canvas_context[1];
  607.  
  608. gameState.imageDats.push(descriptionString);
  609. images.push(canvas);
  610. imageCtxts.push(ctx);
  611. }
  612. redraw();
  613. }
  614.  
  615. function goFullscreen(evt){
  616. evt = evt || window.event;
  617. if (evt.keyCode===70) { //f
  618. var elem = document.getElementById("mainCanvas");
  619. if (elem.requestFullscreen) {
  620. elem.requestFullscreen();
  621. } else if (elem.msRequestFullscreen) {
  622. elem.msRequestFullscreen();
  623. } else if (elem.mozRequestFullScreen) {
  624. elem.mozRequestFullScreen();
  625. } else if (elem.webkitRequestFullscreen) {
  626. elem.webkitRequestFullscreen();
  627. }
  628. }
  629. }
  630. document.addEventListener("keydown", goFullscreen);
  631.  
  632. </script>
  633. </head>
  634. <body onload="init()" onkeydown="goFullscreen(event);">
  635. <div id="header">
  636. </div>
  637. <p>
  638. <div id="content">
  639. <canvas id="mainCanvas"></canvas>
  640. </div>
  641. <p>
  642. <div id="footer">
  643. <a href="http://www.flickgame.org" id="hackLink"></a> <a id="homeLink" href="http://www.flickgame.org"></a>
  644. </div>
  645. </body>
  646. </html>
RAW Paste Data