001package com.fs.starfarer.api.campaign; 002 003import java.util.List; 004import java.util.Map; 005import java.util.Set; 006 007import com.fs.starfarer.api.campaign.rules.MemoryAPI; 008import com.fs.starfarer.api.characters.AdminData; 009import com.fs.starfarer.api.characters.FullName.Gender; 010import com.fs.starfarer.api.characters.PersonAPI; 011 012public interface CharacterDataAPI { 013 014 PersonAPI getPerson(); 015 016 String getName(); 017 018 019 MemoryAPI getMemory(); 020 MemoryAPI getMemoryWithoutUpdate(); 021 022 Set<String> getAbilities(); 023 void addAbility(String id); 024 void removeAbility(String id); 025 026 Map<String, Object> getCustom(); 027 028 Set<String> getHullMods(); 029 void addHullMod(String id); 030 void removeHullMod(String id); 031 032 boolean knowsHullMod(String id); 033 034 List<AdminData> getAdmins(); 035 void addAdmin(PersonAPI admin); 036 void removeAdmin(PersonAPI admin); 037 038 void setPortraitName(String portraitName); 039 void setName(String name, Gender gender); 040 041 Set<String> getSkillsEverMadeElite(); 042 043 String getSavefileVersion(); 044 045 void setSavefileVersion(String skillVersion); 046 047 String getHonorific(); 048 void setHonorific(String honorific); 049 050}