[Fix] Make sure player can accept the active mission from C side code.

This commit is contained in:
Allanis 2014-07-20 21:26:48 +01:00
parent b2a621bbbe
commit b4edcb5f27

View File

@ -1207,10 +1207,21 @@ static void misn_accept(unsigned int wid, char* str) {
char* misn_name; char* misn_name;
Mission* misn; Mission* misn;
int pos; int pos;
int i;
misn_name = toolkit_getList(wid, "lstMission"); misn_name = toolkit_getList(wid, "lstMission");
if(strcmp(misn_name, "No Missions")==0) return; /* Make sure you have missions. */
if(strcmp(misn_name, "No Missions")==0)
return;
/* Make sure player can accept the mission. */
for(i = 0; i < MISSION_MAX; i++)
if(player_missions[i].data == NULL) break;
if(i >= MISSION_MAX) {
dialogue_alert("You have too many active missions.");
return;
}
if(dialogue_YesNo("Accept Mission", if(dialogue_YesNo("Accept Mission",
"Are you sure you want to accept this mission?")) { "Are you sure you want to accept this mission?")) {