Example #1
0
        public void GenerateScript(IGameObjectFieldInfo gameObjectFieldInfo)
        {
            ModuleName = gameObjectFieldInfo.GetModuleName();
            var builder = new StringBuilder();

            AddHeader(builder);

            // add fields
            foreach (var gameObjectName in gameObjectFieldInfo.GetTextGameObjects())
            {
                AddField(builder, gameObjectName, "Text");
            }

            if (gameObjectFieldInfo.GetTextGameObjects().Count > 0)
            {
                builder.AppendLine();
            }

            foreach (var gameObjectName in gameObjectFieldInfo.GetImageGameObjects())
            {
                AddField(builder, gameObjectName, "Image");
            }

            if (gameObjectFieldInfo.GetImageGameObjects().Count > 0)
            {
                builder.AppendLine();
            }
            foreach (var gameObjectName in gameObjectFieldInfo.GetButtonGameObjects())
            {
                AddField(builder, gameObjectName, "Button");
            }

            if (gameObjectFieldInfo.GetToggleGameObjects().Count > 0)
            {
                builder.AppendLine();
            }
            foreach (var gameObjectName in gameObjectFieldInfo.GetToggleGameObjects())
            {
                AddField(builder, gameObjectName, "Toggle[]");
            }

            if (gameObjectFieldInfo.GetButtonGameObjects().Count > 0)
            {
                builder.AppendLine();
            }

            AddAwake(builder, gameObjectFieldInfo.GetButtonGameObjects(), gameObjectFieldInfo.GetToggleGameObjects());

            // add methods
            foreach (var gameObjectName in gameObjectFieldInfo.GetButtonGameObjects())
            {
                AddOnButtonClickMethod(builder, gameObjectName);
                builder.AppendLine();
            }

            foreach (var gameObjectName in gameObjectFieldInfo.GetToggleGameObjects())
            {
                AddOnToggleChangeMethod(builder, gameObjectName);
                builder.AppendLine();
            }


            AddFotter(builder);

            var filePath = gameObjectFieldInfo.GetFilePath(GetKindName());

            FileIoLocater.Write(filePath, builder.ToString());
        }
Example #2
0
 public void SetUp()
 {
     _fileIoManager = Substitute.For <IFileIoManager>();
     FileIoLocater.Set(_fileIoManager);
     _gameObjectFieldInfo = new GameObjectFieldInfoFake();
 }