Just set it directly as:
prime = []
then there will be no prime objectives, though I suppose that would make it automatically complete. without doing anything.
I guess I would need to add a feature that allows for manual completion. Here: paste the following into its own slot below the Quest Journal:
#==============================================================================
# ** Game_Quest
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# Summary of Changes:
# new public instance variable - manual_complete; manual_fail
# aliased method - initialize; complete?; failed?
#==============================================================================
class Game_Quest
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# * Public Instance Variables
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
attr_accessor :manual_complete
attr_accessor :manual_fail
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# * Object Initialization
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
alias ma_mancomqj2_initz_5gf1 initialize
def initialize(*args, &block)
ma_mancomqj2_initz_5gf1(*args, &block) # Run Original Method
@manual_complete = false
@manual_fail = false
end
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# * Check if Complete
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
alias mlg_qj2mncomp_compl_6yo9 complete?
def complete?(*args, &block)
if @prime_objectives.empty?
return @manual_complete
else
mlg_qj2mncomp_compl_6yo9(*args, &block) # Run Original Method
end
end
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# * Check if Failed
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
alias mlg_qj2manclet_failed_4rm9 failed?
def failed?(*args, &block)
if @prime_objectives.empty?
return @manual_fail
else
mlg_qj2manclet_failed_4rm9(*args, &block)
end
end
end
#==============================================================================
# ** Game_Interpreter
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# Summary of Changes:
# new methods - manually_fail_quest; manually_complete_quest
#==============================================================================
class Game_Interpreter
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# * Manually Complete Quest
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
def manually_complete_quest(quest_id)
$game_party.quests[quest_id].manual_complete = true
$game_party.quests[quest_id].manual_fail = false
end
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# * Manually Fail Quest
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
def manually_fail_quest(quest_id)
$game_party.quests[quest_id].manual_complete = false
$game_party.quests[quest_id].manual_fail = true
end
end
Now, what you will need to do is directly set the prime to [], as above. To complete the quest, you use the code:
manually_complete_quest (quest_id)
To fail a quest, use the code:
manually_fail_quest (quest_id)
Where quest_id for both is, of course, an integer.
Mind you, the manual control only applies to quests where there are no prime objectives.
That is untested, so tell me if there are errors.