namespace TMPro.Examples
{

	// [TypeInfo RVA: 0x0]
	public class TextMeshSpawner : MonoBehaviour
	{
		public int SpawnType; // 0x20
		public int NumberOfNPC; // 0x24
		public UnityEngine.Font TheFont; // 0x28
		private TMPro.Examples.TextMeshProFloatingText floatingText_Script; // 0x30

		// RVA: 0x326DC6C VA: 0x7818958C6C
		private void Awake();
		/*
		 *   return;
		 */
		// RVA: 0x326DC70 VA: 0x7818958C70
		private void Start();
		/*
		 *   int iVar1;
		 *   undefined *puVar2;
		 *   undefined *puVar3;
		 *   undefined *puVar4;
		 *   undefined *puVar5;
		 *   void *pvVar6;
		 *   void *pvVar7;
		 *   void *this_00;
		 *   void *value;
		 *   long *this_01;
		 *   void *extraout_x1;
		 *   void *extraout_x1_00;
		 *   void *extraout_x1_01;
		 *   undefined4 uVar8;
		 *   int iVar9;
		 *   float fVar10;
		 *   UnityEngine_Vector3 value_00;
		 *   UnityEngine_Vector3 value_01;
		 *   UnityEngine_Color value_02;
		 *
		 *   if ((bRam000000000754abf7 & 1) == 0) {
		 *     func_0x031fdc8c(PTR_DAT_070c26a8);
		 *     func_0x031fdc8c(PTR_DAT_070c52d0);
		 *     func_0x031fdc8c(PTR_DAT_070c1540);
		 *     func_0x031fdc8c(PTR_DAT_070c5268);
		 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_GameObject_6FC1548);
		 *     func_0x031fdc8c(PTR_DAT_070c52e8);
		 *     bRam000000000754abf7 = 1;
		 *     methodInfo = extraout_x1;
		 *   }
		 *   puVar5 = PTR_DAT_070c52e8;
		 *   puVar4 = PTR_DAT_070c52d0;
		 *   puVar3 = PTR_DAT_070c26a8;
		 *   puVar2 = typeinfo_ptr_UnityEngine_CoreModule_GameObject_6FC1548;
		 *   if (0 < this.NumberOfNPC) {
		 *     iVar9 = 0;
		 *     do {
		 *       iVar1 = this.SpawnType;
		 *       pvVar6 = (void *)func_0x031fdf24(*(undefined8 *)puVar2,methodInfo);
		 *       UnityEngine.GameObject..ctor(pvVar6);
		 *       if (iVar1 == 0) {
		 *         if (pvVar6 == null) goto LAB_0336df9c;
		 *         pvVar7 = UnityEngine.GameObject.get_transform(pvVar6);
		 *         value_01.x = Random.Range(-95.0,95.0);
		 *         fVar10 = Random.Range(-95.0,95.0);
		 *         if (pvVar7 == null) goto LAB_0336df9c;
		 *         value_01.y = 0.5;
		 *         value_01.z = fVar10;
		 *         UnityEngine.Transform.set_position(pvVar7,value_01);
		 *         this_01 = (long *)func_0x037f2fa8(pvVar6,*(undefined8 *)PTR_DAT_070c1540);
		 *         if (this_01 == null) goto LAB_0336df9c;
		 *         TMPro.TMP_Text.set_fontSize(this_01,96.0);
		 *         (**(code **)(*this_01 + 0x558))
		 *                   (this_01,*(undefined8 *)puVar5,*(undefined8 *)(*this_01 + 0x560));
		 *         (**(code **)(*this_01 + 0x2a8))
		 *                   (0x3f800000,0x3f800000,0,0x3f800000,this_01,*(undefined8 *)(*this_01 + 0x2b0));
		 *         pvVar6 = (void *)func_0x037f2fa8(pvVar6,*(undefined8 *)puVar4);
		 *         this.floatingText_Script = pvVar6;
		 *         func_0x031fdc38(&this.floatingText_Script,pvVar6);
		 *         pvVar6 = this.floatingText_Script;
		 *         if (pvVar6 == null) goto LAB_0336df9c;
		 *         uVar8 = 0;
		 *         methodInfo = extraout_x1_01;
		 *       }
		 *       else {
		 *         if (pvVar6 == null) {
		 * LAB_0336df9c:
		 *           IL2CPP.ThrowNullReferenceException();
		 *         }
		 *         pvVar7 = UnityEngine.GameObject.get_transform(pvVar6);
		 *         value_00.x = Random.Range(-95.0,95.0);
		 *         fVar10 = Random.Range(-95.0,95.0);
		 *         if (pvVar7 == null) goto LAB_0336df9c;
		 *         value_00.y = 0.5;
		 *         value_00.z = fVar10;
		 *         UnityEngine.Transform.set_position(pvVar7,value_00);
		 *         pvVar7 = (void *)func_0x037f2fa8(pvVar6,*(undefined8 *)PTR_DAT_070c5268);
		 *         if (pvVar7 == null) goto LAB_0336df9c;
		 *         this_00 = (void *)func_0x0373df50(pvVar7,*(undefined8 *)puVar3);
		 *         if ((this.TheFont == null) ||
		 *            (value = UnityEngine.Font.get_material(this.TheFont), this_00 == null))
		 *         goto LAB_0336df9c;
		 *         UnityEngine.Renderer.set_sharedMaterial(this_00,value);
		 *         UnityEngine.TextMesh.set_font(pvVar7,this.TheFont);
		 *         UnityEngine.TextMesh.set_anchor(pvVar7,7);
		 *         UnityEngine.TextMesh.set_fontSize(pvVar7,0x60);
		 *         value_02.b = 0.0;
		 *         value_02.a = 1.0;
		 *         value_02.r = 1.0;
		 *         value_02.g = 1.0;
		 *         UnityEngine.TextMesh.set_color(pvVar7,value_02);
		 *         UnityEngine.TextMesh.set_text(pvVar7,*(void **)puVar5);
		 *         pvVar6 = (void *)func_0x037f2fa8(pvVar6,*(undefined8 *)puVar4);
		 *         this.floatingText_Script = pvVar6;
		 *         func_0x031fdc38(&this.floatingText_Script,pvVar6);
		 *         pvVar6 = this.floatingText_Script;
		 *         if (pvVar6 == null) goto LAB_0336df9c;
		 *         uVar8 = 1;
		 *         methodInfo = extraout_x1_00;
		 *       }
		 *       iVar1 = this.NumberOfNPC;
		 *       iVar9 = iVar9 + 1;
		 *       *(undefined4 *)((long)pvVar6 + 0x74) = uVar8;
		 *     } while (iVar9 < iVar1);
		 *   }
		 *   return;
		 */
		// RVA: 0x326DFA0 VA: 0x7818958FA0
		public void .ctor();
		/*
		 *   undefined *puVar1;
		 *
		 *   this.NumberOfNPC = 0xc;
		 *   puVar1 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
		 *   if ((bRam000000000755f76f & 1) == 0) {
		 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8,0);
		 *     bRam000000000755f76f = 1;
		 *   }
		 *   if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
		 *     func_0x031fde08();
		 *   }
		 *   return;
		 */
	}
}
