Commit e9376985 authored by nanahira's avatar nanahira

fix rose xuz

parent f8389194
...@@ -1009,8 +1009,9 @@ uint32 card::check_xyz_level(card* pcard, uint32 lv) { ...@@ -1009,8 +1009,9 @@ uint32 card::check_xyz_level(card* pcard, uint32 lv) {
return 0; return 0;
//modded - rose xyz summon //modded - rose xyz summon
card* rcard = pduel->game_field->rose_card; card* rcard = pduel->game_field->rose_card;
if(rcard && rcard == this) uint32 rlv = pduel->game_field->rose_level;
return lv; if(rcard == this && rlv == lv)
return rlv;
uint32 lev; uint32 lev;
effect_set eset; effect_set eset;
filter_effect(EFFECT_XYZ_LEVEL, &eset); filter_effect(EFFECT_XYZ_LEVEL, &eset);
......
...@@ -20,6 +20,7 @@ duel::duel() { ...@@ -20,6 +20,7 @@ duel::duel() {
game_field->temp_card = new_card(0); game_field->temp_card = new_card(0);
//modded - for rose xyz summon //modded - for rose xyz summon
game_field->rose_card = 0; game_field->rose_card = 0;
game_field->rose_level = 0;
clear_buffer(); clear_buffer();
} }
duel::~duel() { duel::~duel() {
...@@ -47,6 +48,7 @@ void duel::clear() { ...@@ -47,6 +48,7 @@ void duel::clear() {
game_field->temp_card = new_card(0); game_field->temp_card = new_card(0);
//modded - for rose xyz summon //modded - for rose xyz summon
game_field->rose_card = 0; game_field->rose_card = 0;
game_field->rose_level = 0;
} }
card* duel::new_card(uint32 code) { card* duel::new_card(uint32 code) {
card* pcard = new card(this); card* pcard = new card(this);
......
...@@ -343,6 +343,7 @@ public: ...@@ -343,6 +343,7 @@ public:
tevent nil_event; tevent nil_event;
//modded - for rose xyz summon //modded - for rose xyz summon
card* rose_card; card* rose_card;
uint32 rose_level;
static int32 field_used_count[32]; static int32 field_used_count[32];
explicit field(duel* pduel); explicit field(duel* pduel);
......
...@@ -117,8 +117,10 @@ int32 scriptlib::card_is_xyz_summonable_by_rose(lua_State *L) { ...@@ -117,8 +117,10 @@ int32 scriptlib::card_is_xyz_summonable_by_rose(lua_State *L) {
pcard->pduel->game_field->core.limit_xyz_minc = 2; pcard->pduel->game_field->core.limit_xyz_minc = 2;
pcard->pduel->game_field->core.limit_xyz_maxc = 2; pcard->pduel->game_field->core.limit_xyz_maxc = 2;
pcard->pduel->game_field->rose_card = rcard; pcard->pduel->game_field->rose_card = rcard;
pcard->pduel->game_field->rose_level = mcard->get_level();
int32 result = pcard->is_special_summonable(p, SUMMON_TYPE_XYZ); int32 result = pcard->is_special_summonable(p, SUMMON_TYPE_XYZ);
pcard->pduel->game_field->rose_card = 0; pcard->pduel->game_field->rose_card = 0;
pcard->pduel->game_field->rose_level = 0;
lua_pushboolean(L, result); lua_pushboolean(L, result);
return 1; return 1;
} }
......
...@@ -188,7 +188,8 @@ int32 scriptlib::duel_xyz_summon_by_rose(lua_State *L) { ...@@ -188,7 +188,8 @@ int32 scriptlib::duel_xyz_summon_by_rose(lua_State *L) {
pduel->game_field->core.limit_xyz_minc = 0; pduel->game_field->core.limit_xyz_minc = 0;
pduel->game_field->core.limit_xyz_maxc = 0; pduel->game_field->core.limit_xyz_maxc = 0;
pduel->game_field->core.summon_cancelable = FALSE; pduel->game_field->core.summon_cancelable = FALSE;
pcard->pduel->game_field->rose_card = rcard; pduel->game_field->rose_card = rcard;
pduel->game_field->rose_level = mcard->get_level();
pduel->game_field->special_summon_rule(playerid, pcard, SUMMON_TYPE_XYZ); pduel->game_field->special_summon_rule(playerid, pcard, SUMMON_TYPE_XYZ);
return lua_yield(L, 0); return lua_yield(L, 0);
} }
......
...@@ -2574,6 +2574,7 @@ int32 field::special_summon_rule(uint16 step, uint8 sumplayer, card* target, uin ...@@ -2574,6 +2574,7 @@ int32 field::special_summon_rule(uint16 step, uint8 sumplayer, card* target, uin
matreason = REASON_XYZ; matreason = REASON_XYZ;
//modded - rose xyz summon //modded - rose xyz summon
pduel->game_field->rose_card = 0; pduel->game_field->rose_card = 0;
pduel->game_field->rose_level = 0;
} }
else if(proc->value == SUMMON_TYPE_LINK) else if(proc->value == SUMMON_TYPE_LINK)
matreason = REASON_LINK; matreason = REASON_LINK;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment