annotate Bom.c @ 0:01387a2e419e

initial version
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Tue, 07 Dec 2010 15:39:45 +0900
parents
children 972a7f233b23
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 #include <stdlib.h>
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 #include <SDL.h>
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
3 #include "object.h"
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 #include "bom.h"
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
5 //#include "libps.h"
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 #include "sgoex.h"
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 #include"debug.h"
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
8
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 int sb_x, sb_y;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
10 int sb_size = -1;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 int count;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 int se_voice[9];
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 int vab[10];
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
14
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 bomchar bchar[100];
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 bomchar *bom_p;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 int bomend = -1;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
18
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
19
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
20 void Bom(int x, int y)
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 {
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 int i;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 bomend++;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
24 if (bomend > 49) {
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 bomend = 49;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
26 return;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
27 }
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
28
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
29 i = bomend;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
30 bchar[i].x = x;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
31 bchar[i].y = y;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
32 bchar[i].no = 0;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
33 bchar[i].f = 0;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
34 //se_voice[0] = SsUtKeyOn(vab[0], 0, 0, 65, 0, 60, 60);
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
35 return;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
36 }
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
37
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
38 void Putbom()
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
39 {
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
40 int i;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
41 for (i = 0; i < bomend + 1; i++) {
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
42 if (bchar[i].no != 8) {
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
43 count++;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
44 DefSpriteEx(30 + bchar[i].no, 8, 8);
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
45 // PutSprite(count, bchar[i].x, bchar[i].y, 30 + bchar[i].no);
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
46 PutSpriteEx(30 + bchar[i].no, bchar[i].x+96, bchar[i].y+96, 2, 2, 1);
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
47 bchar[i].no++;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
48
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
49 }
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
50 if (bchar[i].no == 8) {
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
51 //SsUtKeyOff(se_voice[0], vab[0], 0, 0, 65);
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
52 if (bomend == i) {
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
53 bomend--;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
54 break;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
55 }
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
56 if (bomend > i) {
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
57 bchar[i] = bchar[bomend];
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
58 bomend--;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
59 i--;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
60 }
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
61 }
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
62 }
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
63 }
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
64
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
65 void Superbom(int x, int y)
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
66 {
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
67 Bom(x + rand() % 128 - 64, y + rand() % 128 - 32);
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
68 /*sb_x = x; sb_y = y;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
69 sb_size = 0; */
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
70 return;
01387a2e419e initial version
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
71 }