HeavenStudioPlus/Assets/Scripts/Games/FirstContact/Translator.cs
ev e4646000f2 Second Contact (#363)
* second contact sprites

* Started rewriting

* Sound stuff

* foreigner textbox

* default miss message

* implement basic player textbox

* transparency support for textbox

refactor function labels to use C# convention

* avoid double function call with mistranslation

* add mistranslation textbox

* fix logic with trailing translation

* auto-positioning of translated text content

* auto-hide textboxes on start

* icon

* Added two new helper functions for pitching with semitones and cents

* All new sounds should be in now

* bunch of visual fixes

* Fixed stuff being innaccurate

* Repeating voicelines begone!

* Thump sound for bob man

* Put an animator on the crowd

* Fixed missing sprites

* Fixed anim not playing sometimes on barely

* Changed length of pass turn event from 0.5 to 1 beat long

* Downscaled Sprites

yippee

* Auto look at

* Fixed bob's textbox not appearing sometimes

* Fixed some small things

---------

Co-authored-by: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com>
Co-authored-by: minenice55 <star.elementa@gmail.com>
Co-authored-by: Seanski2 <seanbenedit@gmail.com>
2023-03-27 03:09:55 +00:00

67 lines
1.8 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using DG.Tweening;
using HeavenStudio.Util;
using Starpelly;
namespace HeavenStudio.Games.Scripts_FirstContact
{
public class Translator : PlayerActionObject
{
public Animator anim;
FirstContact game;
public void Init()
{
game = FirstContact.instance;
//anim = GetComponent<Animator>();
}
private void Update()
{
////IF YOU WANT TO PLAY NOTES ANYTIME W/O CONSTRAINTS
//if (PlayerInput.Pressed(true) && !game.isSpeaking)
//{
// successTranslation(true);
//}
}
public void SuccessTranslation(bool ace)
{
if (ace)
{
//if(game.version == 1)
//{
// Jukebox.PlayOneShotGame("firstContact/citrusRemix/1_r");
//}
Jukebox.PlayOneShotGame("firstContact/" + RandomizerLines());
}
else
{
Jukebox.PlayOneShotGame("firstContact/failContact");
}
BeatAction.New(this.gameObject, new List<BeatAction.Action>()
{
new BeatAction.Action(.5f, delegate { anim.Play("translator_speak", 0, 0);}),
});
}
public void EhTranslation()
{
Jukebox.PlayOneShotGame("firstContact/slightlyFail");
BeatAction.New(this.gameObject, new List<BeatAction.Action>()
{
new BeatAction.Action(.5f, delegate { anim.Play("translator_eh", 0, 0);}),
});
}
public int RandomizerLines()
{
return Random.Range(1, 11);
}
}
}