\hypertarget{pixel_manager_8h_source}{}\doxysection{pixel\+Manager.\+h} \label{pixel_manager_8h_source}\index{headers/pixelManager/pixelManager.h@{headers/pixelManager/pixelManager.h}} \mbox{\hyperlink{pixel_manager_8h}{Go to the documentation of this file.}} \begin{DoxyCode}{0} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00001}00001 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00013}00013 \textcolor{preprocessor}{\#ifndef GUARD\_PIXELMANAGER\_H}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00014}00014 \textcolor{preprocessor}{\#define GUARD\_PIXELMANAGER\_H}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00015}00015 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00016}00016 \textcolor{preprocessor}{\#include }} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00017}00017 \textcolor{preprocessor}{\#include "{}mingl/mingl.h"{}}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00018}00018 \textcolor{preprocessor}{\#include "{}mingl/shape/line.h"{}}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00019}00019 \textcolor{preprocessor}{\#include "{}mingl/shape/triangle.h"{}}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00020}00020 \textcolor{preprocessor}{\#include "{}mingl/shape/rectangle.h"{}}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00021}00021 \textcolor{preprocessor}{\#include "{}mingl/shape/circle.h"{}}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00022}00022 \textcolor{preprocessor}{\#include "{}mingl/gui/sprite.h"{}}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00023}00023 \textcolor{preprocessor}{\#include "{}mingl/gui/text.h"{}}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00024}00024 \textcolor{preprocessor}{\#include "{}\mbox{\hyperlink{utils_8h}{utils.h}}"{}}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00025}00025 \textcolor{preprocessor}{\#include "{}\mbox{\hyperlink{play_mode_8h}{playMode.h}}"{}}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00026}00026 \textcolor{preprocessor}{\#include "{}\mbox{\hyperlink{menu_8h}{menu.h}}"{}}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00027}00027 \textcolor{preprocessor}{\#include "{}\mbox{\hyperlink{scores_manager_8h}{scoresManager.h}}"{}}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00028}00028 \textcolor{preprocessor}{\#include "{}\mbox{\hyperlink{my_sprite_8h}{mySprite.h}}"{}}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00029}00029 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00030}00030 \textcolor{keyword}{using namespace }std;} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00031}00031 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00032}\mbox{\hyperlink{pixel_manager_8h_a32c314fdd1d3f009560ba58e17859d63}{00032}} \textcolor{keyword}{typedef} nsGui::GlutFont::GlutFonts \mbox{\hyperlink{pixel_manager_8h_a32c314fdd1d3f009560ba58e17859d63}{Font}};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00033}00033 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00039}00039 \textcolor{comment}{/*}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00040}00040 \textcolor{comment}{ * It's MinGL's fault. This is all I have to say}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00041}00041 \textcolor{comment}{ */}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00042}00042 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00043}\mbox{\hyperlink{pixel_manager_8h_a727fdd9384375b1d268475980118b158}{00043}} \textcolor{preprocessor}{\#define ADD\_SPRITE\_TASK(X) tasks.push\_back((X).asyncLoad("{}assets/"{}}\#X"{}.si2"{}));} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00044}00044 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00045}\mbox{\hyperlink{class_pixel_manager}{00045}} \textcolor{keyword}{class }\mbox{\hyperlink{class_pixel_manager}{PixelManager}}\{} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00046}00046 \textcolor{keyword}{public}:} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00047}00047 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00051}\mbox{\hyperlink{class_pixel_manager_aaca742e0e39716b5e5a89e422a031c36}{00051}} MinGL\& \mbox{\hyperlink{class_pixel_manager_aaca742e0e39716b5e5a89e422a031c36}{window}};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00052}00052 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00058}00058 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a0b28e70e108b042497d483ce85ce5b0e}{loadSprites}}(vector\& tasks);} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00059}00059 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00063}\mbox{\hyperlink{class_pixel_manager_aa108cd115eedc01b2076844b96bc076f}{00063}} \mbox{\hyperlink{class_my_sprite}{MySprite}} \mbox{\hyperlink{class_pixel_manager_aa108cd115eedc01b2076844b96bc076f}{logo}};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00064}00064 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00068}\mbox{\hyperlink{class_pixel_manager_a297c927d2c069c1da7d34d15b11d481d}{00068}} \mbox{\hyperlink{class_my_sprite}{MySprite}} \mbox{\hyperlink{class_pixel_manager_a297c927d2c069c1da7d34d15b11d481d}{menuBackground}};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00069}00069 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00073}\mbox{\hyperlink{class_pixel_manager_ad36fc234b6025da179c02d0845df74d8}{00073}} \mbox{\hyperlink{class_my_sprite}{MySprite}} \mbox{\hyperlink{class_pixel_manager_ad36fc234b6025da179c02d0845df74d8}{gameBackground}};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00074}00074 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00078}\mbox{\hyperlink{class_pixel_manager_a336e6c4321df17aba4b59d07732f051d}{00078}} \mbox{\hyperlink{class_my_sprite}{MySprite}} \mbox{\hyperlink{class_pixel_manager_a336e6c4321df17aba4b59d07732f051d}{rightHand}};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00079}00079 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00083}\mbox{\hyperlink{class_pixel_manager_a0993ba3b7fc6f772c606015a531a33bc}{00083}} \mbox{\hyperlink{class_my_sprite}{MySprite}} \mbox{\hyperlink{class_pixel_manager_a0993ba3b7fc6f772c606015a531a33bc}{leftHand}};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00084}00084 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00090}00090 \textcolor{keyword}{explicit} \mbox{\hyperlink{class_pixel_manager_a199102dfb3ddb3995233ff632a7475dc}{PixelManager}}(MinGL\& \mbox{\hyperlink{class_pixel_manager_aaca742e0e39716b5e5a89e422a031c36}{window}});} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00091}00091 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00099}00099 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a880e77f06534c6c442eaea11435a4ea2}{drawInvaderA}}(\textcolor{keyword}{const} \mbox{\hyperlink{utils_8h_aaa06d516441b519f8892f37adafeade2}{Position}}\& baseVector, \textcolor{keywordtype}{unsigned} size, \textcolor{keyword}{const} RGBAcolor\& color) \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00100}00100 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00108}00108 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a42547d00bfa01b73a8c20ad303ca7f8e}{drawInvaderB}}(\textcolor{keyword}{const} \mbox{\hyperlink{utils_8h_aaa06d516441b519f8892f37adafeade2}{Position}}\& baseVector, \textcolor{keywordtype}{unsigned} size, \textcolor{keyword}{const} RGBAcolor\& color) \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00109}00109 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00117}00117 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_ad175ee24cc72012918e6ba03fe6c759c}{drawInvaderC}}(\textcolor{keyword}{const} \mbox{\hyperlink{utils_8h_aaa06d516441b519f8892f37adafeade2}{Position}}\& baseVector, \textcolor{keywordtype}{unsigned} size, \textcolor{keyword}{const} RGBAcolor\& color) \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00118}00118 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00127}00127 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a293ef94a41a86b8ef61bde85a6b024c2}{drawPlayer}}(\mbox{\hyperlink{utils_8h_a19f2f2312637b6ed67b6d24598b6f470}{playerID}} pID, \textcolor{keywordtype}{unsigned} x, \textcolor{keywordtype}{unsigned} width, \textcolor{keyword}{const} nsGraphics::RGBAcolor\& color) \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00128}00128 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00136}00136 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a401d8dbd71beec02e8860ead4b8ddcd4}{drawMissile}}(\textcolor{keyword}{const} \mbox{\hyperlink{utils_8h_aaa06d516441b519f8892f37adafeade2}{Position}}\& baseVector, \textcolor{keywordtype}{unsigned} width, \textcolor{keyword}{const} nsGraphics::RGBAcolor\& color) \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00137}00137 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00145}00145 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a76579bc40dcabd2c21dda1b1b4f9495c}{drawTorpedo}}(\textcolor{keyword}{const} \mbox{\hyperlink{utils_8h_aaa06d516441b519f8892f37adafeade2}{Position}}\& baseVector, \textcolor{keywordtype}{unsigned} width, \textcolor{keyword}{const} nsGraphics::RGBAcolor\& color) \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00146}00146 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00147}\mbox{\hyperlink{pixel_manager_8h_adb86102dc8f7eb1fdae1c185fd6f07f6}{00147}} \textcolor{preprocessor}{\#define HEART\_LENGTH 64}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00148}00148 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00154}00154 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a70d916c90738dba58f11cac8faf3cac4}{drawHeart}}(\textcolor{keyword}{const} \mbox{\hyperlink{utils_8h_aaa06d516441b519f8892f37adafeade2}{Position}}\& baseVector) \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00155}00155 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00162}00162 \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a1aa725d6d04cce92ce8d43d58175e28f}{drawSprite}}(\textcolor{keyword}{const} \mbox{\hyperlink{class_my_sprite}{MySprite}}\& msp, \textcolor{keyword}{const} \mbox{\hyperlink{utils_8h_aaa06d516441b519f8892f37adafeade2}{Position}}\& pos) \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00163}00163 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00171}00171 \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a3931894fc3a88e00c4c33e12c2be1aac}{displayButton}}(\textcolor{keyword}{const} \mbox{\hyperlink{utils_8h_aaa06d516441b519f8892f37adafeade2}{Position}}\& baseVector,\textcolor{keyword}{const} \textcolor{keywordtype}{string}\& text,nsGraphics::RGBAcolor\& color);} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00172}00172 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00181}00181 \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a402e04eeae1dfe23f8da76a0bb1770a5}{drawText}}(\textcolor{keyword}{const} \mbox{\hyperlink{utils_8h_aaa06d516441b519f8892f37adafeade2}{Position}}\& pos, \textcolor{keyword}{const} \textcolor{keywordtype}{string}\& text, \textcolor{keyword}{const} RGBAcolor\& color = nsGraphics::KWhite, \mbox{\hyperlink{pixel_manager_8h_a32c314fdd1d3f009560ba58e17859d63}{Font}} font = Font::BITMAP\_TIMES\_ROMAN\_24) \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00182}00182 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00188}00188 \mbox{\hyperlink{play_mode_8h_a188092ed559d356ade9a517d60ec3f34}{PlayMode}} \mbox{\hyperlink{class_pixel_manager_a30c8c220730ef121c78b6ff9b3a941d3}{showInitialMenu}}();} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00189}00189 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00197}00197 \textcolor{keywordtype}{bool} \mbox{\hyperlink{class_pixel_manager_aca51fa0a1ef8ac59076669ac68c7e152}{showDeathMenu}}(\textcolor{keyword}{const} vector\& rankings,\textcolor{keyword}{const} \mbox{\hyperlink{utils_8h_acd2eabcda2cfc7902077f1f9a9e318de}{WinValue}}\& winner);} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00198}00198 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00204}00204 \textcolor{keywordtype}{unsigned} \mbox{\hyperlink{class_pixel_manager_a69a986401035a12c8e12a015b7ac250a}{getScreenHeight}}() \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00205}00205 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00211}00211 \textcolor{keywordtype}{unsigned} \mbox{\hyperlink{class_pixel_manager_a755b819d8edf14edcd0d87d5fd3966fd}{getScreenWidth}}() \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00212}00212 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00217}00217 \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a061f872b418537446952b17533ff02d6}{startFrame}}() \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00218}00218 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00223}00223 \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a39a1801e2c89c10c6a5c9ef33c83e8ec}{endFrame}}() \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00224}00224 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00232}00232 \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_aff5bd3e9f79200dbb2e7c0a5b9346625}{askPlayerNameMenu}}(\mbox{\hyperlink{utils_8h_a19f2f2312637b6ed67b6d24598b6f470}{playerID}} pID, \textcolor{keywordtype}{unsigned} score, \textcolor{keywordtype}{string}\& name);} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00233}00233 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00234}00234 \textcolor{comment}{// y will be negative sometimes, so not unsigned}} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00235}00235 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00241}00241 \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a3e7390472c4a79482b10b36ccde0b1f4}{drawGodBench}}(\textcolor{keywordtype}{int} y) \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00242}00242 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00249}00249 \textcolor{keywordtype}{void} \mbox{\hyperlink{class_pixel_manager_a14f4569284c7b0ba9d75738600494402}{drawGodFace}}(\textcolor{keywordtype}{int} y, \textcolor{keywordtype}{bool} angry=\textcolor{keyword}{false}) \textcolor{keyword}{const};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00250}00250 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00251}00251 \textcolor{keyword}{private}:} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00252}00252 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00259}00259 \textcolor{keywordtype}{void} drawMenu(\textcolor{keyword}{const} \mbox{\hyperlink{utils_8h_aaa06d516441b519f8892f37adafeade2}{Position}}\& pos, \mbox{\hyperlink{struct_menu}{Menu}}\& currentMenu);} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00260}00260 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00269}00269 \textcolor{keywordtype}{void} drawMenu(\textcolor{keyword}{const} \mbox{\hyperlink{utils_8h_aaa06d516441b519f8892f37adafeade2}{Position}}\& pos, \mbox{\hyperlink{struct_menu}{Menu}}\& currentMenu, \textcolor{keyword}{const} vector\& rankings, \textcolor{keyword}{const} \mbox{\hyperlink{utils_8h_acd2eabcda2cfc7902077f1f9a9e318de}{WinValue}}\& winner);} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00270}00270 \};} \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00271}00271 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00272}00272 } \DoxyCodeLine{\Hypertarget{pixel_manager_8h_source_l00273}00273 \textcolor{preprocessor}{\#endif}} \end{DoxyCode}