comparison xrogue/pack.c @ 239:837044d2c362

Merge the GCC5 and build fix branches. This fixes all warnings produced by GCC 5, except the ones related to system functions. Those could be fixed by including the proper headers, but it would be better to replace the system-dependent code with functions from mdport.c.
author John "Elwin" Edwards
date Fri, 11 Mar 2016 19:47:52 -0500
parents e1cd27c5464f
children
comparison
equal deleted inserted replaced
232:bac2c81fec78 239:837044d2c362
34 { 34 {
35 register struct linked_list *ip, *lp = NULL, *ap; 35 register struct linked_list *ip, *lp = NULL, *ap;
36 register struct object *obj, *op = NULL; 36 register struct object *obj, *op = NULL;
37 register bool exact, from_floor; 37 register bool exact, from_floor;
38 bool giveflag = 0; 38 bool giveflag = 0;
39 static long cleric = C_CLERIC, 39 int newclass;
40 monk = C_MONK,
41 magician = C_MAGICIAN,
42 assassin = C_ASSASSIN,
43 druid = C_DRUID,
44 thief = C_THIEF,
45 fighter = C_FIGHTER,
46 ranger = C_RANGER,
47 paladin = C_PALADIN;
48 40
49 if (item == NULL) 41 if (item == NULL)
50 { 42 {
51 from_floor = TRUE; 43 from_floor = TRUE;
52 if ((item = find_obj(hero.y, hero.x)) == NULL) 44 if ((item = find_obj(hero.y, hero.x)) == NULL)
257 switch (obj->o_which) { 249 switch (obj->o_which) {
258 /* the ankh of Heil gives you prayers */ 250 /* the ankh of Heil gives you prayers */
259 case HEIL_ANKH: 251 case HEIL_ANKH:
260 msg("The ankh welds itself into your hand. "); 252 msg("The ankh welds itself into your hand. ");
261 if (player.t_ctype != C_CLERIC && player.t_ctype != C_PALADIN) 253 if (player.t_ctype != C_CLERIC && player.t_ctype != C_PALADIN)
262 fuse(prayer_recovery, (VOID *)NULL, SPELLTIME, AFTER); 254 fuse(prayer_recovery, NULL, SPELLTIME, AFTER);
263 /* start a fuse to change player into a paladin */ 255 /* start a fuse to change player into a paladin */
264 if (quest_item != HEIL_ANKH) { 256 if (quest_item != HEIL_ANKH) {
265 msg("You hear a strange, distant hypnotic calling... "); 257 msg("You hear a strange, distant hypnotic calling... ");
266 if (player.t_ctype != C_PALADIN && obj->o_which ==HEIL_ANKH) 258 if (player.t_ctype != C_PALADIN && obj->o_which ==HEIL_ANKH) {
267 fuse(changeclass, &paladin, roll(8, 8), AFTER); 259 newclass = C_PALADIN;
260 fuse(changeclass, &newclass, roll(8, 8), AFTER);
261 }
268 } 262 }
269 263
270 /* A cloak must be worn. */ 264 /* A cloak must be worn. */
271 when EMORI_CLOAK: 265 when EMORI_CLOAK:
272 if (cur_armor != NULL || cur_misc[WEAR_CLOAK]) { 266 if (cur_armor != NULL || cur_misc[WEAR_CLOAK]) {
285 if (obj->o_charges == 0) 279 if (obj->o_charges == 0)
286 fuse(cloak_charge, obj, CLOAK_TIME, AFTER); 280 fuse(cloak_charge, obj, CLOAK_TIME, AFTER);
287 /* start a fuse to change player into a monk */ 281 /* start a fuse to change player into a monk */
288 if (quest_item != EMORI_CLOAK) { 282 if (quest_item != EMORI_CLOAK) {
289 msg("You suddenly become calm and quiet. "); 283 msg("You suddenly become calm and quiet. ");
290 if (player.t_ctype != C_MONK && obj->o_which == EMORI_CLOAK) 284 if (player.t_ctype != C_MONK && obj->o_which == EMORI_CLOAK) {
291 fuse(changeclass, &monk, roll(8, 8), AFTER); 285 newclass = C_MONK;
286 fuse(changeclass, &newclass, roll(8, 8), AFTER);
287 }
292 } 288 }
293 289
294 /* The amulet must be worn. */ 290 /* The amulet must be worn. */
295 when STONEBONES_AMULET: 291 when STONEBONES_AMULET:
296 case YENDOR_AMULET: 292 case YENDOR_AMULET:
310 /* start a fuse to change into a magician */ 306 /* start a fuse to change into a magician */
311 if (quest_item != STONEBONES_AMULET) { 307 if (quest_item != STONEBONES_AMULET) {
312 if (player.t_ctype != C_MAGICIAN && 308 if (player.t_ctype != C_MAGICIAN &&
313 obj->o_which == STONEBONES_AMULET) { 309 obj->o_which == STONEBONES_AMULET) {
314 msg("You sense approaching etheric forces... "); 310 msg("You sense approaching etheric forces... ");
315 fuse(changeclass, &magician, roll(8, 8), AFTER); 311 newclass = C_MAGICIAN;
312 fuse(changeclass, &newclass, roll(8, 8), AFTER);
316 } 313 }
317 } 314 }
318 315
319 /* The eye is now inserted in forehead */ 316 /* The eye is now inserted in forehead */
320 when EYE_VECNA: 317 when EYE_VECNA:
329 waste_time(); 326 waste_time();
330 msg("The excruciating pain slowly turns into a dull throb."); 327 msg("The excruciating pain slowly turns into a dull throb.");
331 /* start a fuse to change player into an assassin */ 328 /* start a fuse to change player into an assassin */
332 if (quest_item != EYE_VECNA) { 329 if (quest_item != EYE_VECNA) {
333 msg("Your blood rushes and you begin to sweat profusely... "); 330 msg("Your blood rushes and you begin to sweat profusely... ");
334 if (player.t_ctype != C_ASSASSIN && obj->o_which == EYE_VECNA) 331 if (player.t_ctype != C_ASSASSIN && obj->o_which == EYE_VECNA) {
335 fuse(changeclass, &assassin, roll(8, 8), AFTER); 332 newclass = C_ASSASSIN;
333 fuse(changeclass, &newclass, roll(8, 8), AFTER);
334 }
336 } 335 }
337 336
338 when QUILL_NAGROM: 337 when QUILL_NAGROM:
339 fuse(quill_charge,(VOID *)NULL, 8, AFTER); 338 fuse(quill_charge, NULL, 8, AFTER);
340 /* start a fuse to change player into a druid */ 339 /* start a fuse to change player into a druid */
341 if (quest_item != QUILL_NAGROM) { 340 if (quest_item != QUILL_NAGROM) {
342 msg("You begin to see things differently... "); 341 msg("You begin to see things differently... ");
343 if (player.t_ctype != C_DRUID && obj->o_which == QUILL_NAGROM) 342 if (player.t_ctype != C_DRUID && obj->o_which == QUILL_NAGROM) {
344 fuse(changeclass, &druid, roll(8, 8), AFTER); 343 newclass = C_DRUID;
344 fuse(changeclass, &newclass, roll(8, 8), AFTER);
345 }
345 } 346 }
346 347
347 /* Weapons will insist on being wielded. */ 348 /* Weapons will insist on being wielded. */
348 when MUSTY_DAGGER: 349 when MUSTY_DAGGER:
349 case HRUGGEK_MSTAR: 350 case HRUGGEK_MSTAR:
360 /* start a fuse to change player into a thief */ 361 /* start a fuse to change player into a thief */
361 if (quest_item != MUSTY_DAGGER) { 362 if (quest_item != MUSTY_DAGGER) {
362 if (player.t_ctype != C_THIEF && 363 if (player.t_ctype != C_THIEF &&
363 obj->o_which == MUSTY_DAGGER) { 364 obj->o_which == MUSTY_DAGGER) {
364 msg("You look about furtively. "); 365 msg("You look about furtively. ");
365 fuse(changeclass, &thief, roll(8, 8), AFTER); 366 newclass = C_THIEF;
367 fuse(changeclass, &newclass, roll(8, 8), AFTER);
366 } 368 }
367 } 369 }
368 /* start a fuse to change player into a fighter */ 370 /* start a fuse to change player into a fighter */
369 if (quest_item != AXE_AKLAD) { 371 if (quest_item != AXE_AKLAD) {
370 if (player.t_ctype != C_FIGHTER && 372 if (player.t_ctype != C_FIGHTER &&
371 obj->o_which == AXE_AKLAD) { 373 obj->o_which == AXE_AKLAD) {
372 msg("Your bones feel strengthened. "); 374 msg("Your bones feel strengthened. ");
373 fuse(changeclass, &fighter, roll(8, 8), AFTER); 375 newclass = C_FIGHTER;
376 fuse(changeclass, &newclass, roll(8, 8), AFTER);
374 } 377 }
375 } 378 }
376 if (cur_weapon != NULL) { 379 if (cur_weapon != NULL) {
377 msg("The artifact insists you release your current weapon!"); 380 msg("The artifact insists you release your current weapon!");
378 if (!dropcheck(cur_weapon)) { 381 if (!dropcheck(cur_weapon)) {
403 when BRIAN_MANDOLIN: 406 when BRIAN_MANDOLIN:
404 msg("You hear an ancient haunting sound... "); 407 msg("You hear an ancient haunting sound... ");
405 /* start a fuse to change player into a ranger */ 408 /* start a fuse to change player into a ranger */
406 if (quest_item != BRIAN_MANDOLIN) { 409 if (quest_item != BRIAN_MANDOLIN) {
407 msg("You are transfixed with empathy. "); 410 msg("You are transfixed with empathy. ");
408 if (player.t_ctype != C_RANGER && obj->o_which == BRIAN_MANDOLIN) 411 if (player.t_ctype != C_RANGER && obj->o_which == BRIAN_MANDOLIN) {
409 fuse(changeclass, &ranger, roll(8, 8), AFTER); 412 newclass = C_RANGER;
413 fuse(changeclass, &newclass, roll(8, 8), AFTER);
414 }
410 } 415 }
411 416
412 /* add to the music */ 417 /* add to the music */
413 when GERYON_HORN: 418 when GERYON_HORN:
414 msg("You begin to hear trumpets!"); 419 msg("You begin to hear trumpets!");
415 /* start a fuse to change player into a cleric */ 420 /* start a fuse to change player into a cleric */
416 if (quest_item != GERYON_HORN) { 421 if (quest_item != GERYON_HORN) {
417 msg("You follow their calling. "); 422 msg("You follow their calling. ");
418 if (player.t_ctype != C_CLERIC && obj->o_which == GERYON_HORN) 423 if (player.t_ctype != C_CLERIC && obj->o_which == GERYON_HORN) {
419 fuse(changeclass, &cleric, roll(8, 8), AFTER); 424 newclass = C_CLERIC;
425 fuse(changeclass, &newclass, roll(8, 8), AFTER);
426 }
420 } 427 }
421 428
422 /* the card can not be picked up, it must be traded for */ 429 /* the card can not be picked up, it must be traded for */
423 when ALTERAN_CARD: 430 when ALTERAN_CARD:
424 if (giveflag == FALSE) { 431 if (giveflag == FALSE) {