This is a stand alone version of
Change Mirror from the Change Dresser (https://steamcommunity.com/sharedfiles/filedetails/?id=1180720623) mod.
To Build a Change Mirror:
-20 steel
-20 wood/stone/metal
Allows a pawn to change:
- Hair Style
- Hair Color
- Body Type
- Body Color
- Head Type
- Gender
- Biological & Chronological Age
- Apparel Color
Note: Unlike in Change Dresser, apparel color will not persist as pawns change apparel.
As in the apparel itself will stay the color but the new piece of apparel a pawn replaced it with will not change color automatically.
Steam (https://steamcommunity.com/sharedfiles/filedetails/?id=1390088618)
Direct Download:
1.3 (https://github.com/KiameV/rimworld-changemirror/releases/download/1.3/ChangeMirror.zip)B18 (https://github.com/KiameV/rimworld-changemirror/releases/download/B18/ChangeMirror.zip)
B19 (https://github.com/KiameV/rimworld-changemirror/releases/download/B19/ChangeMirror.zip)
1.0 (https://github.com/KiameV/rimworld-changemirror/releases/download/1.0/ChangeMirror.zip)
1.2 (https://github.com/KiameV/rimworld-changemirror/releases/download/1.2/ChangeMirror.zip)
Github: https://github.com/KiameV/rimworld-changemirror
Thank you translators!
Vaniat - Chinese Simplified and Traditional
Proxyer - Japanese
Ɲơɴɑɱɛ - German
Gidreess - Russian
Boundir - French
Like my mods? Consider supporting me!
(https://i.imgur.com/i08683D.png) (https://ko-fi.com/kiamev)
(https://steamuserimages-a.akamaihd.net/ugc/925932353625592694/2499FBE252D18B6D2EBE59A184A78F1E43B123CC/)
(https://steamuserimages-a.akamaihd.net/ugc/925932353625572077/FDF883C532D11AC0B0765AC6FBFE3B7E1ACB21D6/)
(https://steamuserimages-a.akamaihd.net/ugc/925932353625572422/E02EA0B39745FA42AD47A2D80C2A7D5A1934F88F/)
(https://steamuserimages-a.akamaihd.net/ugc/925932353625572579/D33D9B32D77DEAF1F5823B116BB3AF828B3EE7E3/)
(https://steamuserimages-a.akamaihd.net/ugc/925932353625572724/92522E70637372941DB13B76F8A4281AC0027E6A/)
(https://steamuserimages-a.akamaihd.net/ugc/925932353625572868/B54D496B4A8BD0A0797F2C524A42C0742AF4E8D2/)
Will it be updated to beta 19?
It is on my to-do list. This is a scaled down version from Change Dresser which can be used in the mean time
https://ludeon.com/forums/index.php?topic=41483.0
Updated for B19
Direct Download: https://github.com/KiameV/rimworld-changemirror/releases/download/B19/ChangeMirror.zip
Steam: https://steamcommunity.com/sharedfiles/filedetails/?id=1390088618
Thats very thoughtful of you. Most modders wouldnt do this, i been hoping the author of More Furniture would take out the redundant furnishings added by vanilla (dresser and end tables) or add it as a standalone. I dig it.
Guess i never updated this one...
1.0 is available here: https://github.com/KiameV/rimworld-changemirror/releases/download/1.0/ChangeMirror.zip
Thank you so much from me! For two days I was continuously searching for these opportunities, I was exhausted! Now my soul soars in bliss - I wish you all the best in life! :)
Google Translate
Hi getting this error, but no mirror after construction
Exception in JobDriver tick for pawn Delphine driver=_JobDriver_ConstructFinishFrame (toilIndex=1) driver.job=(FinishFrame (Job_599236) A=Thing_Frame_ChangeMirror297259) lastJobGiver=Verse.AI.ThinkNode_QueuedJob
System.ArgumentNullException: Argument cannot be null.
Parameter name: type
at System.Activator.CheckType (System.Type) <0x00095>
at System.Activator.CreateInstance (System.Type,bool) <0x00027>
at System.Activator.CreateInstance (System.Type) <0x0001e>
at (wrapper dynamic-method) Verse.ThingMaker.MakeThing_Patch1 (Verse.ThingDef,Verse.ThingDef) <0x00373>
at RimWorld.Frame.CompleteConstruction (Verse.Pawn) <0x00309>
at RimWorld.JobDriver_ConstructFinishFrame/<MakeNewToils>c__Iterator0/<MakeNewToils>c__AnonStorey1.<>m__1 () <0x00396>
at (wrapper dynamic-method) Verse.AI.JobDriver.DriverTick_Patch1 (object) <0x004c8>
Verse.Log:Error(String, Boolean)
Verse.AI.JobUtility:TryStartErrorRecoverJob(Pawn, String, Exception, JobDriver)
Verse.AI.JobDriver:DriverTick_Patch1(Object)
Verse.AI.Pawn_JobTracker:JobTrackerTick()
Verse.Pawn:Tick_Patch2(Object)
Verse.TickList:Tick()
Verse.TickManager:DoSingleTick()
ZombieLand.Verse_TickManager_TickManagerUpdate_Patch:SingleTick(TickManager, Int32)
Verse.TickManager:TickManagerUpdate_Patch1(Object)
Verse.Game:UpdatePlay()
Verse.Root_Play:Update()
Update:
Fixed support for Alien Races
Added option to share hair styles between genders (alien races can limit this)
Howdy! Question: ,,Is it possible to replace the original mod with this without destroying the mirrors I currently have in game? They are decorated with art and I wouldn't like to loose them."
Yes the def names did not change so existing mirrors will still be there
Thanks, will try. ;)
EDIT: Works, thx.
Updated for 1.1 - https://github.com/KiameV/rimworld-changemirror/releases/download/1.1/ChangeMirror.zip
I have not had a chance to test this against alien races. Please let me know if it works =)
So about a year ago i posted on this mods github, havent really played since then but got back into it now and since you havent checked that i thought i d try here.
There is an issue with share hair styles option - even with it enabled, a female pawn with mop hair (tagged MaleUsually) will get her hair reset to the first female hair in the menu. Most likely a problem within SelectionWidgetDTO.
The second thing i wanted is to have another row of presets. Since your code is very clear this is real easy to do.
Just up the ColorPresetsDTO.ColorPresets to 10 and make some changes in WidgetUtil:
if (presetsDto != null)
{
GUI.BeginGroup(new Rect(5, colorPickerRect.yMax, (ColorPreset.width + 4) * presetsDto.Count, 2*ColorPreset.height + 10));
float l = 0;
float k = 0;
for (int i = 0; i < presetsDto.Count; ++i)
{
GUI.color = presetsDto[i];
l += ColorPreset.width + 4;
//NewRow
if (i == 5)
{
k = ColorPreset.height + 5;
l = ColorPreset.width + 4;
}
Rect presetRect = new Rect(l, k, ColorPreset.width, ColorPreset.height);
Could also do it with mod or div if you ever want to add a rows option.
Fixing an issue where alien races could spawn w/o heads.
There _may_ be an error that comes up when loading a save using the previous version of this mod. That error can be ignored and will not appear again after a new save.
Update:
Added "clearBuildingArea = false" attribute to change mirror
Update:
Body type can be modified again
ModSync tells ChangeMirror was updated to 1.1.1.3, but downloadables are 1.1.1.1.
Ugg i'm really missing the ball with keeping all the files in sync. The download was correct i had just forgotten to update the modsync file in the mod. Fixed now
Update:
Fixed the problem with pawns spawning with no head for when AlienRaces is enabled. Load order for this mod will not matter.
Let me know if there are still any issues.
Update:
Fixing a possible problem for those not using AlienRaces mod when selecting crown types
Is it possible that one of the recent updates broke compatibility with Humanoid Alien Races?
Even without any races loaded but with Humanoid Alien Races only, when trying to use the mirror to change the hairstyle it will not work and you get this error instead:
DresserUI closed due to: NullReferenceException Object reference not set to an instance of an object
Verse.Log:Error(String, Boolean)
ChangeMirror.UI.DresserUI:DoWindowContents(Rect)
Verse.Window:InnerWindowOnGUI(Int32)
UnityEngine.GUI:CallWindowDelegate(WindowFunction, Int32, Int32, GUISkin, Int32, Single, Single, GUIStyle)
When you also use CE and the pawn is wearing one of CE's backpacks, you will additionally get this error:
SetColor on Thing without CompColorable Apparel_Backpack506357
Verse.Log:Error(String, Boolean)
Verse.CompColorableUtility:SetColor(Thing, Color, Boolean)
ChangeMirror.UI.DresserUI:UpdatePawn(Object, Object)
ChangeMirror.UI.DTO.SelectionWidgetDTOs.SelectionColorWidgetDTO:ResetToDefault()
ChangeMirror.UI.DTO.SelectionWidgetDTOs.ApparelColorSelectionsContainer:ResetToDefault()
ChangeMirror.UI.DTO.DresserDTO:ResetToDefault()
ChangeMirror.UI.DresserUI:ResetToDefault()
ChangeMirror.UI.DresserUI:PreClose()
Verse.WindowStack:DMD<DMD<TryRemove_Patch1>?-410102784::TryRemove_Patch1>(WindowStack, Window, Boolean)
Verse.Window:DMD<DMD<Close_Patch2>?293170432::Close_Patch2>(Window, Boolean)
ChangeMirror.UI.DresserUI:DoWindowContents(Rect)
Verse.Window:InnerWindowOnGUI(Int32)
UnityEngine.GUI:CallWindowDelegate(WindowFunction, Int32, Int32, GUISkin, Int32, Single, Single, GUIStyle)
DresserUI closed due to: NullReferenceException Object reference not set to an instance of an object
Verse.Log:Error(String, Boolean)
ChangeMirror.UI.DresserUI:DoWindowContents(Rect)
Verse.Window:InnerWindowOnGUI(Int32)
UnityEngine.GUI:CallWindowDelegate(WindowFunction, Int32, Int32, GUISkin, Int32, Single, Single, GUIStyle)
Can you please make it work with HAR again? Some of my pawns are wearing hairstyles that nobody would ever voluntarily choose and I cannot bear it any longer. :(
Updated for 1.2
Update:
Fixing an issue where human w/ AlienRaces enabled could not have their head type changed.
Updated for 1.3 - Direct Download (https://github.com/KiameV/rimworld-changemirror/releases/tag/1.3)
Update:
Supports humanoid alien races mod again
Update: 1.3.1.0 (https://github.com/KiameV/rimworld-changemirror/releases/download/1.3/ChangeMirror.zip)
Can now edit beards
Can change a pawn's favorite color