public void start(MapleCharacter c, int npc) {
	if ((autoStart || checkNPCOnMap(c, npc)) && canStart(c, npc)) {
	    for (MapleQuestAction a : startActs) {
		a.runStart(c, null);
	    }
	    if (!customend) {
		final MapleQuestStatus oldStatus = c.getQuest(this);
		final MapleQuestStatus newStatus = new MapleQuestStatus(this, (byte) 1, npc);
		newStatus.setCompletionTime(oldStatus.getCompletionTime());
		newStatus.setForfeited(oldStatus.getForfeited());
		c.updateQuest(newStatus);
	    } else {
		NPCScriptManager.getInstance().endQuest(c.getClient(), npc, getId(), true);
	    }
	}
    }