summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Trunk.txt2
-rw-r--r--src/map/clif.c16
-rw-r--r--src/map/script.c5
3 files changed, 14 insertions, 9 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index 9b162fa67..689133ab7 100644
--- a/Changelog-Trunk.txt
+++ b/Changelog-Trunk.txt
@@ -1,5 +1,7 @@
Date Added
+2011/02/09
+ * Fixed script command 'bpet' (Pet Incubator) displaying an empty egg list when attempting to hatch a pet while already having one out (bugreport:3313). [Ai4rei]
2011/02/08
* Moved script constant manipulation code into separate functions script_get_constant / script_set_constant. [Ai4rei]
- Added protection against overwriting existing names in script constant creation code.
diff --git a/src/map/clif.c b/src/map/clif.c
index 98bb0821a..4d3ca1b19 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -6194,15 +6194,13 @@ int clif_sendegg(struct map_session_data *sd)
}
WFIFOHEAD(fd, MAX_INVENTORY * 2 + 4);
WFIFOW(fd,0)=0x1a6;
- if(sd->status.pet_id <= 0) {
- for(i=0,n=0;i<MAX_INVENTORY;i++){
- if(sd->status.inventory[i].nameid<=0 || sd->inventory_data[i] == NULL ||
- sd->inventory_data[i]->type!=IT_PETEGG ||
- sd->status.inventory[i].amount<=0)
- continue;
- WFIFOW(fd,n*2+4)=i+2;
- n++;
- }
+ for(i=0,n=0;i<MAX_INVENTORY;i++){
+ if(sd->status.inventory[i].nameid<=0 || sd->inventory_data[i] == NULL ||
+ sd->inventory_data[i]->type!=IT_PETEGG ||
+ sd->status.inventory[i].amount<=0)
+ continue;
+ WFIFOW(fd,n*2+4)=i+2;
+ n++;
}
WFIFOW(fd,2)=4+n*2;
WFIFOSET(fd,WFIFOW(fd,2));
diff --git a/src/map/script.c b/src/map/script.c
index dd19e79e2..df862dcc0 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -9124,6 +9124,11 @@ BUILDIN_FUNC(birthpet)
if( sd == NULL )
return 0;
+ if( sd->status.pet_id )
+ {// do not send egg list, when you already have a pet
+ return 0;
+ }
+
clif_sendegg(sd);
return 0;
}