160 |
[encoder encodeObject: _player]; |
[encoder encodeObject: _player]; |
161 |
[encoder encodeValueOfObjCType: "f" at: &_acceleration]; |
[encoder encodeValueOfObjCType: "f" at: &_acceleration]; |
162 |
[encoder encodeValueOfObjCType: "f" at: &_direction]; |
[encoder encodeValueOfObjCType: "f" at: &_direction]; |
163 |
/* FIXME array coding */ |
[encoder encodeValueOfObjCType: "c" at: &_fireweapons]; |
|
int size = [_fireWeapons count]; |
|
|
[encoder encodeValueOfObjCType: "i" at: &size]; |
|
|
[encoder encodeArrayOfObjCType: "c" count: size at: &_fireWeapons]; |
|
164 |
[encoder encodeValueOfObjCType: "f" at: &_canonDirection]; |
[encoder encodeValueOfObjCType: "f" at: &_canonDirection]; |
165 |
[encoder encodeValueOfObjCType: "I" at: &_canonElevation]; |
[encoder encodeValueOfObjCType: "I" at: &_canonElevation]; |
|
[encoder encodeValueOfObjCType: "I" at: &_identifiant]; |
|
166 |
} |
} |
167 |
|
|
168 |
- (id)initWithCoder: (NSCoder *)decoder |
- (id)initWithCoder: (NSCoder *)decoder |
169 |
{ |
{ |
|
int size; |
|
|
|
|
170 |
self = [super init]; |
self = [super init]; |
171 |
_player = [[decoder encodeObject] retain]; |
_player = [[decoder encodeObject] retain]; |
172 |
[decoder decodeValueOfObjCType: "f" at: &_acceleration]; |
[decoder decodeValueOfObjCType: "f" at: &_acceleration]; |
173 |
[decoder decodeValueOfObjCType: "f" at: &_direction]; |
[decoder decodeValueOfObjCType: "f" at: &_direction]; |
174 |
|
[decoder decodeValueOfObjCType: "c" at: &_fireweapons]; |
|
[decoder decodeValueOfObjCType: "i" at: &size]; |
|
|
_fireWeapons = malloc(size);// + 1; |
|
|
[decoder decodeArrayOfObjCType: "c" count: size at: &_fireWeapons]; |
|
|
//_fireWeapons[size] = 0; |
|
|
|
|
175 |
[decoder decodeValueOfObjCType: "f" at: &_canonDirection]; |
[decoder decodeValueOfObjCType: "f" at: &_canonDirection]; |
176 |
[decoder decodeValueOfObjCType: "I" at: &_canonElevation]; |
[decoder decodeValueOfObjCType: "I" at: &_canonElevation]; |
|
[decoder decodeValueOfObjCType: "I" at: &_identifiant]; |
|
177 |
|
|
178 |
return self; |
return self; |
179 |
} |
} |