mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2025-01-11 18:00:34 +00:00
changes:: ambush
This commit is contained in:
parent
6e3e9e3eca
commit
75bbbe6b42
12
complex2.cpp
12
complex2.cpp
@ -768,7 +768,8 @@ EX int size(cell *c, eItem what) {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
EX int ambush(cell *c, eItem what) {
|
EX void ambush(cell *c, eItem what) {
|
||||||
|
LATE ( ambush(c, what); )
|
||||||
int maxdist = gamerange();
|
int maxdist = gamerange();
|
||||||
celllister cl(c, maxdist, 1000000, NULL);
|
celllister cl(c, maxdist, 1000000, NULL);
|
||||||
cell *c0 = c;
|
cell *c0 = c;
|
||||||
@ -821,7 +822,8 @@ EX int ambush(cell *c, eItem what) {
|
|||||||
int dogs = size(c, what);
|
int dogs = size(c, what);
|
||||||
|
|
||||||
int gaps = dogs;
|
int gaps = dogs;
|
||||||
if(!N) return dogs0;
|
int result = dogs0;
|
||||||
|
if(N) {
|
||||||
ambushed = true;
|
ambushed = true;
|
||||||
int shift = hrand(N);
|
int shift = hrand(N);
|
||||||
dogs = min(dogs, N);
|
dogs = min(dogs, N);
|
||||||
@ -833,7 +835,11 @@ EX int ambush(cell *c, eItem what) {
|
|||||||
nextdog->stuntime = 1;
|
nextdog->stuntime = 1;
|
||||||
drawFlash(nextdog);
|
drawFlash(nextdog);
|
||||||
}
|
}
|
||||||
return dogs + dogs0;
|
result += dogs;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(result)
|
||||||
|
addMessage(XLAT("You are ambushed!"));
|
||||||
}
|
}
|
||||||
EX }
|
EX }
|
||||||
|
|
||||||
|
@ -80,9 +80,7 @@ EX bool collectItem(cell *c2, bool telekinesis IS(false)) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(c2->land == laHunting && c2->item && !inv::activating) {
|
if(c2->land == laHunting && c2->item && !inv::activating) {
|
||||||
int dogs = ambush::ambush(c2, c2->item);
|
ambush::ambush(c2, c2->item);
|
||||||
if(dogs)
|
|
||||||
addMessage(XLAT("You are ambushed!"));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(isRevivalOrb(c2->item) && multi::revive_queue.size()) {
|
if(isRevivalOrb(c2->item) && multi::revive_queue.size()) {
|
||||||
|
Loading…
Reference in New Issue
Block a user