Mercurial > hg > Members > koba > t_dandy
annotate collision_task.cc @ 54:3acdeb3dc3e8
collision use global_alloc (not work)
author | koba <koba@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 27 Jan 2011 21:05:30 +0900 |
parents | b31bed246abd |
children | 2c33aa6a4a37 |
rev | line source |
---|---|
5 | 1 #include <stdio.h> |
2 #include <stdlib.h> | |
3 #include <SDL.h> | |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
4 #include "Func.h" |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
5 #include "TaskManager.h" |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
6 #include "collision_task.h" |
5 | 7 #include "Character.h" |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
8 #include "count2.h" |
5 | 9 #include "tokuten.h" |
53 | 10 #include "object.h" |
5 | 11 #include "sgoex.h" |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
12 |
5 | 13 #include "property.h" |
14 | |
53 | 15 |
5 | 16 extern SpriteTable sptable[DEFOBJ]; |
17 extern TaskManager *tmanager; | |
18 | |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
19 HTaskPtr update_task; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
20 HTaskPtr reflect_task; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
21 |
53 | 22 static CollisionPropertyPtr |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
23 get_property() |
5 | 24 { |
8 | 25 CollisionPropertyPtr property = (CollisionPropertyPtr)tmanager->allocate(sizeof(CollisionProperty)); |
19 | 26 |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
27 property->infg_level = infg_level; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
28 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
29 property->tama_lv1_end = tama_lv1_end; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
30 property->tama_lv2_end = tama_lv2_end; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
31 property->laser_lv1_end = laser_lv1_end; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
32 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
33 property->enemycount = enemycount; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
34 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
35 property->jiki = jiki; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
36 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
37 property->lg = lg; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
38 property->infg = infg; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
39 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
40 memcpy(property->tama_lv1, tama_lv1, sizeof(tama1)*20); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
41 memcpy(property->tama_lv2, tama_lv2, sizeof(tama2)*20); |
19 | 42 property->tlv3 = tlv3[0]; |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
43 memcpy(property->laser_lv1, laser_lv1, sizeof(laser)*20); |
34 | 44 property->laser_lv2 = laser_lv2[0]; |
19 | 45 memcpy(property->laser_lv3, laser_lv3, sizeof(laser)*128); |
5 | 46 |
47 return property; | |
48 } | |
49 | |
50 void | |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
51 reflect_property(SchedTask *s, void *prop, void *none) |
5 | 52 { |
53 CollisionPropertyPtr property = (CollisionPropertyPtr)prop; | |
53 | 54 |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
55 infg_level = property->infg_level; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
56 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
57 tama_lv1_end = property->tama_lv1_end; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
58 tama_lv2_end = property->tama_lv2_end; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
59 laser_lv1_end = property->laser_lv1_end; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
60 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
61 enemycount = property->enemycount; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
62 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
63 jiki = property->jiki; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
64 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
65 lg = property->lg; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
66 infg = property->infg; |
53 | 67 |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
68 memcpy(tama_lv1, property->tama_lv1, sizeof(tama1)*20); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
69 memcpy(tama_lv2, property->tama_lv2, sizeof(tama2)*20); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
70 tlv3[0] = property->tlv3; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
71 memcpy(laser_lv1, property->laser_lv1, sizeof(laser)*20); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
72 laser_lv2[0] = property->laser_lv2; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
73 memcpy(laser_lv3, property->laser_lv3, sizeof(laser)*128); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
74 } |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
75 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
76 void |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
77 after_free(SchedTask *s, void *object, void *none) |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
78 { |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
79 free(object); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
80 } |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
81 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
82 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
83 void |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
84 collision_allocate() |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
85 { |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
86 HTaskPtr alloc_task = tmanager->create_task(DataAllocate); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
87 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
88 alloc_task->set_param(0, (memaddr)1); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
89 alloc_task->set_param(1, (memaddr)sizeof(CollisionProperty)); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
90 alloc_task->set_param(2, (memaddr)COLLDATA); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
91 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
92 alloc_task->set_cpu(SPE_0); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
93 alloc_task->spawn(); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
94 } |
53 | 95 |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
96 HTaskPtr |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
97 collision_update() |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
98 { |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
99 update_task = tmanager->create_task(DataUpdate); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
100 CollisionPropertyPtr property = get_property(); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
101 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
102 update_task->set_param(0, (memaddr)1); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
103 update_task->set_param(1, (memaddr)COLLDATA); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
104 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
105 update_task->set_inData(0, property, sizeof(CollisionProperty)); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
106 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
107 update_task->set_post(after_free, (void*)property, NULL); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
108 update_task->set_cpu(SPE_0); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
109 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
110 return update_task; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
111 } |
53 | 112 |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
113 HTaskPtr |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
114 collision_reflect() |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
115 { |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
116 reflect_task = tmanager->create_task(COLLDATA_REFLECT); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
117 CollisionPropertyPtr property = (CollisionPropertyPtr)tmanager->allocate(sizeof(CollisionProperty)); |
53 | 118 |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
119 reflect_task->set_param(0, (memaddr)COLLDATA); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
120 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
121 reflect_task->set_outData(0, property, sizeof(CollisionProperty)); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
122 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
123 reflect_task->set_post(reflect_property, (void*)property, NULL); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
124 reflect_task->set_cpu(SPE_0); |
53 | 125 |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
126 return reflect_task; |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
127 } |
5 | 128 |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
129 void |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
130 collision_free() |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
131 { |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
132 HTaskPtr free_task = tmanager->create_task(DataFree); |
5 | 133 |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
134 free_task->set_param(0, (memaddr)COLLDATA); |
5 | 135 |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
136 free_task->set_cpu(SPE_0); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
137 free_task->spawn(); |
5 | 138 } |
139 | |
140 | |
19 | 141 CHARACTER* |
142 atari(CHARACTER *p) | |
5 | 143 { |
144 int w, h, charno; | |
145 | |
146 charno = p->charano; | |
147 w = sptable[charno].w; | |
148 h = sptable[charno].h; | |
149 | |
53 | 150 int obj_size = sizeof(ObjContainer); |
37 | 151 ObjContainerPtr obj = (ObjContainerPtr)tmanager->allocate(obj_size); |
152 obj->flag = false; | |
153 obj->length = 0; | |
154 | |
5 | 155 HTaskPtr collision_task = tmanager->create_task(ATARI); |
156 | |
157 collision_task->set_param(0,(memaddr)w); | |
158 collision_task->set_param(1,(memaddr)h); | |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
159 collision_task->set_param(2, (memaddr)COLLDATA); |
5 | 160 |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
161 collision_task->set_inData(0, p, sizeof(player)); |
34 | 162 |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
163 collision_task->set_outData(0, p, sizeof(player)); |
53 | 164 collision_task->set_outData(1, obj, sizeof(ObjContainer)); |
34 | 165 |
54
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
166 collision_task->set_post(after_free, (void*)obj, NULL); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
167 collision_task->set_cpu(SPE_0); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
168 |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
169 collision_task->wait_for(update_task); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
170 reflect_task->wait_for(collision_task); |
3acdeb3dc3e8
collision use global_alloc (not work)
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
53
diff
changeset
|
171 |
5 | 172 collision_task->spawn(); |
173 | |
174 return p; | |
175 } |