

Unity didn't like that, it didn't even execute with the patched dll. I tried deleting the whole switch statement lol. Now, what can we do about it? I tried a couple of things with Reflexil:

Int intValue2 = EditorGUI.ArraySizeField(position, label, property.intValue, EditorStyles.numberField) This is the relevant section for us: case SerializedPropertyType.ArraySize: Sure enough, after a very simple reflect, I found it sitting at - But we are not interested in it actually, we're more interested into the caller, who's using/calling this? If you're using ILSpy, you could right click on the method and collapse "Used by", you'll see that it's called by (Which is the method called when you do a PropertyField) - it has a giant switch statement for the propertyType that's how it figures out what control to draw for your property. So I thought I'd find this stupid method and do something about it. Now, there's something really stupid in Unity, if you make a PropertyDrawer for a list/array, it will forcefully display the array size field even if your drawer's OnGUI is freckin empty! That is PLAIN stupid! - I didn't like that. NET Reflector or JustDecompile - It's a plugin there you can install it for free - Unfortunately it's not available for ILSpy) NET assemblies with it with ease! For example. I came to find out about Mono Cecil - it's really powerful! - You can modify.

So I read about all assembly/dll modifications/hacks/edits, etc. Recently I found out about the 'beautiful' dynamic keyword, I was so happy, you have no idea! Only soon to discover Unity's rusty Mono version doesn't support it! It broke my heart! I decided it's time for payback, Unity broke my heart, it's time to break 'it'! Allow me to be brave (or maybe stupid lol), and say yes! But not in a legitimate/straight-forward manner, and just for the managed side of Unity (its managed assemblies)
