Fix scenario editor build
This commit is contained in:
@@ -15,10 +15,10 @@
|
||||
<button name='pict-edit' type='regular' top='186' left='471'>Choose</button>
|
||||
<text size='large' top='6' left='50' width='156' height='17'>Editing a townsperson/monster</text>
|
||||
<group name='attitude'>
|
||||
<led name='att1' top='97' left='242' width='100'>Friendly, Docile</led>
|
||||
<led name='att2' top='113' left='242' width='100'>Hostile, Type A</led>
|
||||
<led name='att3' top='97' left='377' width='100'>Friendly, Will Fight</led>
|
||||
<led name='att4' top='113' left='377' width='100'>Hostile, Type B</led>
|
||||
<led name='docile' top='97' left='242' width='100'>Friendly, Docile</led>
|
||||
<led name='hostile-a' top='113' left='242' width='100'>Hostile, Type A</led>
|
||||
<led name='friendly' top='97' left='377' width='100'>Friendly, Will Fight</led>
|
||||
<led name='hostile-b' top='113' left='377' width='100'>Hostile, Type B</led>
|
||||
</group>
|
||||
<group name='mobility'>
|
||||
<led name='mob1' top='133' left='224'>No</led>
|
||||
|
@@ -610,16 +610,16 @@ static void put_monst_info_in_dlog(cDialog& me, cMonster& monst, mon_num_t which
|
||||
|
||||
cLedGroup& attitude = dynamic_cast<cLedGroup&>(me["attitude"]);
|
||||
switch(monst.default_attitude) {
|
||||
case 0:
|
||||
case eAttitude::DOCILE:
|
||||
attitude.setSelected("docile");
|
||||
break;
|
||||
case 1:
|
||||
case eAttitude::HOSTILE_A:
|
||||
attitude.setSelected("A");
|
||||
break;
|
||||
case 2:
|
||||
case eAttitude::FRIENDLY:
|
||||
attitude.setSelected("friendly");
|
||||
break;
|
||||
case 3:
|
||||
case eAttitude::HOSTILE_B:
|
||||
attitude.setSelected("B");
|
||||
break;
|
||||
}
|
||||
@@ -727,10 +727,10 @@ static bool save_monst_info(cDialog& me, cMonster& monst) {
|
||||
monst.default_facial_pic = me["talk"].getTextAsNum();
|
||||
monst.treasure = me["treas"].getTextAsNum();
|
||||
std::string def_att = dynamic_cast<cLedGroup&>(me["attitude"]).getSelected();
|
||||
if(def_att == "docile") monst.default_attitude = 0;
|
||||
else if(def_att == "friendly") monst.default_attitude = 2;
|
||||
else if(def_att == "A") monst.default_attitude = 1;
|
||||
else if(def_att == "B") monst.default_attitude = 3;
|
||||
if(def_att == "docile") monst.default_attitude = eAttitude::DOCILE;
|
||||
else if(def_att == "friendly") monst.default_attitude = eAttitude::FRIENDLY;
|
||||
else if(def_att == "A") monst.default_attitude = eAttitude::HOSTILE_A;
|
||||
else if(def_att == "B") monst.default_attitude = eAttitude::HOSTILE_B;
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -2729,7 +2729,12 @@ static bool save_scen_details(cDialog& me, std::string, eKeyMod) {
|
||||
scenario.difficulty = difficulty.getSelected()[3] - '1';
|
||||
}{
|
||||
cLedGroup& rating = dynamic_cast<cLedGroup&>(me["rating"]);
|
||||
scenario.rating = rating.getSelected()[4] - '1';
|
||||
switch(rating.getSelected()[4]) {
|
||||
case '1': scenario.rating = eContentRating::G; break;
|
||||
case '2': scenario.rating = eContentRating::PG; break;
|
||||
case '3': scenario.rating = eContentRating::R; break;
|
||||
case '4': scenario.rating = eContentRating::NC17; break;
|
||||
}
|
||||
}
|
||||
scenario.adjust_diff = dynamic_cast<cLed&>(me["adjust"]).getState() != led_red;
|
||||
for(i = 0; i < 3; i++)
|
||||
|
@@ -39,7 +39,7 @@ static void put_placed_monst_in_dlog(cDialog& me, cTownperson& monst, const shor
|
||||
me["num"].setTextToNum(which);
|
||||
me["type"].setText(scenario.scen_monsters[monst.number].m_name);
|
||||
// TODO: Make attitude an enum
|
||||
dynamic_cast<cLedGroup&>(me["attitude"]).setSelected("att" + std::to_string(monst.start_attitude + 1));
|
||||
dynamic_cast<cLedGroup&>(me["attitude"]).setSelected(boost::lexical_cast<std::string>(monst.start_attitude));
|
||||
dynamic_cast<cLedGroup&>(me["mobility"]).setSelected("mob" + std::to_string(monst.mobility + 1));
|
||||
me["talk"].setTextToNum(monst.personality);
|
||||
me["picnum"].setTextToNum(monst.facial_pic);
|
||||
@@ -52,7 +52,7 @@ static void put_placed_monst_in_dlog(cDialog& me, cTownperson& monst, const shor
|
||||
}
|
||||
|
||||
static void get_placed_monst_in_dlog(cDialog& me, cTownperson& store_placed_monst) {
|
||||
store_placed_monst.start_attitude = dynamic_cast<cLedGroup&>(me["attitude"]).getSelected()[3] - '1';
|
||||
store_placed_monst.start_attitude = boost::lexical_cast<eAttitude>(dynamic_cast<cLedGroup&>(me["attitude"]).getSelected());
|
||||
store_placed_monst.mobility = dynamic_cast<cLedGroup&>(me["mobility"]).getSelected()[3] - '1';
|
||||
store_placed_monst.personality = me["talk"].getTextAsNum();
|
||||
store_placed_monst.facial_pic = me["picnum"].getTextAsNum();
|
||||
|
Reference in New Issue
Block a user