… | |
… | |
238 | } |
238 | } |
239 | else |
239 | else |
240 | return resurrect_player (op, name_to_resurrect, spell); |
240 | return resurrect_player (op, name_to_resurrect, spell); |
241 | } |
241 | } |
242 | |
242 | |
243 | static void |
|
|
244 | dead_player (object *op) |
|
|
245 | { |
|
|
246 | char filename[MAX_BUF]; |
|
|
247 | char newname[MAX_BUF]; |
|
|
248 | char path[MAX_BUF]; |
|
|
249 | |
|
|
250 | /* set up our paths/strings... */ |
|
|
251 | sprintf (path, "%s/%s/%s/%s", settings.localdir, settings.playerdir, &op->name, &op->name); |
|
|
252 | |
|
|
253 | strcpy (filename, path); |
|
|
254 | strcat (filename, ".pl"); |
|
|
255 | strcpy (newname, filename); |
|
|
256 | strcat (newname, ".dead"); |
|
|
257 | |
|
|
258 | if (rename (filename, newname) != 0) |
|
|
259 | { |
|
|
260 | LOG (llevError, "Cannot rename dead player's file %s into %s: %s\n", filename, newname, strerror (errno)); |
|
|
261 | } |
|
|
262 | } |
|
|
263 | |
|
|
264 | static void |
|
|
265 | dead_character (const char *name) |
|
|
266 | { |
|
|
267 | char buf[MAX_BUF]; |
|
|
268 | char buf2[MAX_BUF]; |
|
|
269 | |
|
|
270 | sprintf (buf, "%s/%s/%s/%s.pl", settings.localdir, settings.playerdir, name, name); |
|
|
271 | /* peterm: create a .dead filename.... ***.pl.dead */ |
|
|
272 | strcpy (buf2, buf); |
|
|
273 | strcat (buf, ".dead"); |
|
|
274 | if (rename (buf2, buf) == -1) |
|
|
275 | { |
|
|
276 | LOG (llevError, "Cannot rename dead player's file %s into %s: %s\n", buf2, buf, strerror (errno)); |
|
|
277 | } |
|
|
278 | } |
|
|
279 | |
|
|
280 | static int |
|
|
281 | dead_player_exists (const char *name) |
|
|
282 | { |
|
|
283 | char buf[MAX_BUF]; |
|
|
284 | |
|
|
285 | sprintf (buf, "%s/%s/%s/%s", settings.localdir, settings.playerdir, name, name); |
|
|
286 | strcat (buf, ".pl.dead"); |
|
|
287 | return !(access (buf, 0)); |
|
|
288 | } |
|
|