1 /*
2 Copyright (C) 2004 Parallel Realities
3
4 This program is free software; you can redistribute it and/or
5 modify it under the terms of the GNU General Public License
6 as published by the Free Software Foundation; either version 2
7 of the License, or (at your option) any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12
13 See the GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18
19 */
20
21 #include "resources.h"
22
loadResources()23 void loadResources()
24 {
25 Sprite *sprite;
26
27 debug(("Loading Resources...\n"));
28
29 /* load all the graphics */
30
31 graphics.quickSprite("TitleLogo", graphics.loadImage("gfx/main/title.png"));
32 graphics.quickSprite("PRLogo", graphics.loadImage("gfx/main/prlogo.gif"));
33 graphics.setFontSize(3);
34 graphics.setFontColor(0xff, 0xff, 0xff, 0x00, 0x00, 0x00);
35 graphics.quickSprite("Presents", graphics.getString(true, "Presents"));
36 graphics.quickSprite("SDL", graphics.getString(true, "An SDL Game"));
37
38 graphics.quickSprite("BlueDirectory", graphics.loadImage("gfx/dirs/blueDir.png"));
39 graphics.quickSprite("GreenDirectory", graphics.loadImage("gfx/dirs/greenDir.png"));
40 graphics.quickSprite("GreyDirectory", graphics.loadImage("gfx/dirs/greyDir.png"));
41 graphics.quickSprite("RedDirectory", graphics.loadImage("gfx/dirs/redDir.png"));
42 graphics.quickSprite("VioletDirectory", graphics.loadImage("gfx/dirs/violetDir.png"));
43 graphics.quickSprite("YellowDirectory", graphics.loadImage("gfx/dirs/yellowDir.png"));
44
45 graphics.quickSprite("Binary", graphics.loadImage("gfx/fileTypes/binary.png"));
46 graphics.quickSprite("HTML", graphics.loadImage("gfx/fileTypes/html.png"));
47 graphics.quickSprite("Image", graphics.loadImage("gfx/fileTypes/image.png"));
48 graphics.quickSprite("Video", graphics.loadImage("gfx/fileTypes/video.png"));
49 graphics.quickSprite("PDF", graphics.loadImage("gfx/fileTypes/pdf.png"));
50 graphics.quickSprite("QuickTime", graphics.loadImage("gfx/fileTypes/quicktime.png"));
51 graphics.quickSprite("RPM", graphics.loadImage("gfx/fileTypes/rpm.png"));
52 graphics.quickSprite("Office", graphics.loadImage("gfx/fileTypes/soffice.png"));
53 graphics.quickSprite("Sound", graphics.loadImage("gfx/fileTypes/sound.png"));
54 graphics.quickSprite("C", graphics.loadImage("gfx/fileTypes/source_c.png"));
55 graphics.quickSprite("CPP", graphics.loadImage("gfx/fileTypes/source_cpp.png"));
56 graphics.quickSprite("H", graphics.loadImage("gfx/fileTypes/source_h.png"));
57 graphics.quickSprite("Java", graphics.loadImage("gfx/fileTypes/source_java.png"));
58 graphics.quickSprite("O", graphics.loadImage("gfx/fileTypes/source_o.png"));
59 graphics.quickSprite("Zip", graphics.loadImage("gfx/fileTypes/tgz.png"));
60 graphics.quickSprite("Text", graphics.loadImage("gfx/fileTypes/txt.png"));
61 graphics.quickSprite("WordProcessing", graphics.loadImage("gfx/fileTypes/wordprocessing.png"));
62
63 graphics.quickSprite("Base1", graphics.loadImage("gfx/sprites/ie.png"));
64 graphics.quickSprite("Base2", graphics.loadImage("gfx/sprites/bin.png"));
65 graphics.quickSprite("Base3", graphics.loadImage("gfx/sprites/outlook.png"));
66 graphics.quickSprite("Base4", graphics.loadImage("gfx/sprites/msn.png"));
67
68 graphics.quickSprite("ItemBomb", graphics.loadImage("gfx/sprites/bomb.png"));
69 graphics.quickSprite("ItemClock", graphics.loadImage("gfx/sprites/clock.png"));
70 graphics.quickSprite("ItemPower", graphics.loadImage("gfx/sprites/battery.png"));
71
72 graphics.quickSprite("Targeter", graphics.loadImage("gfx/sprites/targeter.png"));
73
74 sprite = graphics.addSprite("Virus1");
75 sprite->setFrame(0, graphics.loadImage("gfx/sprites/virus1-1.png"), 10);
76 sprite->setFrame(1, graphics.loadImage("gfx/sprites/virus1-2.png"), 10);
77 sprite->setFrame(2, graphics.loadImage("gfx/sprites/virus1-3.png"), 10);
78 sprite->setFrame(3, graphics.loadImage("gfx/sprites/virus1-4.png"), 10);
79
80 sprite = graphics.addSprite("Virus2");
81 sprite->setFrame(0, graphics.loadImage("gfx/sprites/virus2-1.png"), 8);
82 sprite->setFrame(1, graphics.loadImage("gfx/sprites/virus2-2.png"), 8);
83 sprite->setFrame(2, graphics.loadImage("gfx/sprites/virus2-3.png"), 8);
84
85 sprite = graphics.addSprite("Virus3");
86 sprite->setFrame(0, graphics.loadImage("gfx/sprites/virus3-1.png"), 5);
87 sprite->setFrame(1, graphics.loadImage("gfx/sprites/virus3-2.png"), 5);
88 sprite->setFrame(2, graphics.loadImage("gfx/sprites/virus3-3.png"), 5);
89 sprite->setFrame(3, graphics.loadImage("gfx/sprites/virus3-4.png"), 5);
90
91 audio.loadSound(SND_VIRUSLAUGH1, "sound/virusLaugh1.wav");
92 audio.loadSound(SND_VIRUSLAUGH2, "sound/virusLaugh2.wav");
93 audio.loadSound(SND_VIRUSLAUGH3, "sound/virusLaugh2.wav");
94 audio.loadSound(SND_VIRUSLAUGH4, "sound/virusLaugh5.wav");
95 audio.loadSound(SND_VIRUSLAUGH5, "sound/virusLaugh5.wav");
96 audio.loadSound(SND_VIRUSLAUGH6, "sound/virusLaugh6.wav");
97
98 audio.loadSound(SND_VIRUSDESTROYDIR, "sound/virusDestroyDir.wav");
99
100 audio.loadSound(SND_VIRUSKILLED1, "sound/virusKilled1.wav");
101 audio.loadSound(SND_VIRUSKILLED2, "sound/virusKilled2.wav");
102 audio.loadSound(SND_VIRUSKILLED3, "sound/virusKilled3.wav");
103
104 audio.loadSound(SND_VIRUSEATFILE, "sound/virusEatFile.wav");
105
106 audio.loadSound(SND_DIRDESTROYED1, "sound/dirDestroyed1.wav");
107 audio.loadSound(SND_DIRDESTROYED2, "sound/dirDestroyed2.wav");
108 audio.loadSound(SND_DIRDESTROYED3, "sound/dirDestroyed3.wav");
109 audio.loadSound(SND_DIRDESTROYED4, "sound/dirDestroyed4.wav");
110 audio.loadSound(SND_DIRDESTROYED5, "sound/dirDestroyed5.wav");
111 audio.loadSound(SND_DIRDESTROYED6, "sound/dirDestroyed6.wav");
112
113 audio.loadSound(SND_FILEDESTROYED1, "sound/fileDestroyed1.wav");
114 audio.loadSound(SND_FILEDESTROYED2, "sound/fileDestroyed2.wav");
115 audio.loadSound(SND_FILEDESTROYED3, "sound/fileDestroyed3.wav");
116
117 audio.loadSound(SND_KERNALBEAM, "sound/kernelBeam.wav");
118
119 audio.loadSound(SND_POWERUP, "sound/powerup.wav");
120 audio.loadSound(SND_CLOCK, "sound/clock.wav");
121 audio.loadSound(SND_EXPLOSION, "sound/explosion.wav");
122
123 audio.loadSound(SND_ITEM, "sound/item.wav");
124
125 audio.loadSound(SND_GAMEOVER, "sound/gameOver.wav");
126
127 gameData.base[0].image = graphics.getSprite("Base1", true)->getCurrentFrame();
128 gameData.base[1].image = graphics.getSprite("Base2", true)->getCurrentFrame();
129 gameData.base[2].image = graphics.getSprite("Base3", true)->getCurrentFrame();
130 gameData.base[3].image = graphics.getSprite("Base4", true)->getCurrentFrame();
131
132 debug(("Finished Resources...\n"));
133 }
134
loadRandomBackground()135 void loadRandomBackground()
136 {
137 int r = rand() % 10;
138
139 switch (r)
140 {
141 case 0:
142 graphics.loadBackground("gfx/backgrounds/amiga39.png");
143 break;
144 case 1:
145 graphics.loadBackground("gfx/backgrounds/gnome.png");
146 break;
147 case 2:
148 graphics.loadBackground("gfx/backgrounds/kde1.png");
149 break;
150 case 3:
151 graphics.loadBackground("gfx/backgrounds/kde2.png");
152 break;
153 case 4:
154 graphics.loadBackground("gfx/backgrounds/longhorn.png");
155 break;
156 case 5:
157 graphics.loadBackground("gfx/backgrounds/macosx.png");
158 break;
159 case 6:
160 graphics.loadBackground("gfx/backgrounds/win31.png");
161 break;
162 case 7:
163 graphics.loadBackground("gfx/backgrounds/winxp.png");
164 break;
165 case 8:
166 graphics.loadBackground("gfx/backgrounds/xbox.png");
167 break;
168 case 9:
169 graphics.loadBackground("gfx/backgrounds/amiga13.png");
170 }
171 }
172