mirror of
https://codeberg.org/noisytoot/notnotdnethack.git
synced 2025-05-01 12:55:11 +01:00
Bugfix for Wards and Scroll of Warding
More flexibility for wished wards. Scrolls of warding now detect if the TYPE of engraving currently on the square is wrong.
This commit is contained in:
parent
3e95cb1a0a
commit
cd56872298
2 changed files with 20 additions and 7 deletions
24
src/objnam.c
24
src/objnam.c
|
@ -2563,7 +2563,9 @@ srch:
|
|||
typ = SCR_WARD;
|
||||
goto typfnd;
|
||||
}
|
||||
if(!strncmpi(actualn, "circle of acheron", 9)){
|
||||
if(!strncmpi(actualn, "acheron", 7) ||
|
||||
!strncmpi(actualn, "circle", 6) ||
|
||||
!strncmpi(actualn, "circle of acheron", 17)){
|
||||
acheron = TRUE;
|
||||
typ = SCR_WARD;
|
||||
goto typfnd;
|
||||
|
@ -2578,7 +2580,8 @@ srch:
|
|||
typ = SCR_WARD;
|
||||
goto typfnd;
|
||||
}
|
||||
if(!strncmpi(actualn, "hamsa", 5)){
|
||||
if(!strncmpi(actualn, "hamsa mark", 10) ||
|
||||
!strncmpi(actualn, "hamsa", 5)){
|
||||
hamsa = TRUE;
|
||||
typ = SCR_WARD;
|
||||
goto typfnd;
|
||||
|
@ -2588,22 +2591,31 @@ srch:
|
|||
typ = SCR_WARD;
|
||||
goto typfnd;
|
||||
}
|
||||
if(!strncmpi(actualn, "elder elemental eye", 19)){
|
||||
if(!strncmpi(actualn, "elder elemental eye", 19)
|
||||
||!strncmpi(actualn, "elder eye", 9)
|
||||
||!strncmpi(actualn, "elemental eye", 13)){
|
||||
eye = TRUE;
|
||||
typ = SCR_WARD;
|
||||
goto typfnd;
|
||||
}
|
||||
if(!strncmpi(actualn, "sign of the scion queen mother", 30)){
|
||||
if(!strncmpi(actualn, "sign of the scion queen mother", 30)\
|
||||
||!strncmpi(actualn, "scion queen mother", 18)
|
||||
||!strncmpi(actualn, "queen mother", 12)
|
||||
||!strncmpi(actualn, "mother", 6)){
|
||||
queen = TRUE;
|
||||
typ = SCR_WARD;
|
||||
goto typfnd;
|
||||
}
|
||||
if(!strncmpi(actualn, "cartouche of the cat lord", 25)){
|
||||
if(!strncmpi(actualn, "cartouche of the cat lord", 25)
|
||||
||!strncmpi(actualn, "cat lord", 8)
|
||||
||!strncmpi(actualn, "cartouche", 9)){
|
||||
cartouche = TRUE;
|
||||
typ = SCR_WARD;
|
||||
goto typfnd;
|
||||
}
|
||||
if(!strncmpi(actualn, "wings of garuda", 15)){
|
||||
if(!strncmpi(actualn, "wings of garuda", 15)
|
||||
||!strncmpi(actualn, "wings", 5)
|
||||
||!strncmpi(actualn, "garuda", 6)){
|
||||
garuda = TRUE;
|
||||
typ = SCR_WARD;
|
||||
goto typfnd;
|
||||
|
|
|
@ -1675,7 +1675,8 @@ struct obj *sobj;
|
|||
engrHere->ward_type = BURN;
|
||||
engrHere->complete_wards = 1;
|
||||
}
|
||||
else if(engrHere->ward_id != wardNum){
|
||||
else if(engrHere->ward_id != wardNum
|
||||
|| engrHere->ward_type != BURN){
|
||||
engrHere->ward_id = wardNum;
|
||||
engrHere->ward_type = BURN;
|
||||
engrHere->complete_wards = sobj->blessed ?
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue