i am looking for a GetAxisDown function, i have tryed a lot of ways to do it, but i can´t get it to work
i am trying to add the D-pad to my menu system, the problem is, it speeds through the menu, here is a video of it
on Pc javascript and Time.timeScale = 0.0
#pragma strict
static var level1time : float = 0.0/3;
var spiller : GameObject;
var someString : String;
var high : int = -100;
var menuup:boolean;
var menudown:boolean;
var b : int = 75;
var h1 :int = 90;
var h2 :int = 50;
var h3 :int = 10;
var menuOptions = new String[3];
menuOptions[0] = "menu01";
menuOptions[1] = "menu02";
menuOptions[2] = "menu03";
var selectedIndex = 0;
function Start () {
menuup = false;
menudown = false;
player.q2 = false;
level1time = 0;
player.playerLives = 3;
player.playerScore = 0;
Screen.showCursor = false;
}
function Update () {
showtime();
if (Input.GetAxis("axis7") == 0){
menudown = false;
}
if (menudown == false && Input.GetAxis("axis7") > 0)
{
menudown = true;
return false;
}
if (player.Quit == true){
h1 = 90;
h2 = 50;
h3 = 10;
}else{
h1 = 2290;
h2 = 2250;
h3 = 2210;
}
if (player.Quit == false){
if ((Input.GetButtonDown("Fire1"))|| (Input.GetButtonDown("Fire2"))){
player.q2esc();
player.Quit = true;
}
}
if (player.Quit == true){
Screen.showCursor = true;
Time.timeScale = 0.0;
if (Input.GetKeyDown("up")|| (menuup == true)|| (Input.GetKeyDown("w"))) {
selectedIndex = menuSelection(menuOptions, selectedIndex, "up");
}
if (Input.GetKeyDown("down")|| (menudown == true)|| (Input.GetKeyDown("s"))) {
selectedIndex = menuSelection(menuOptions, selectedIndex, "down");
}
if ((Input.GetKeyDown("space"))||(Input.GetKey ("return"))|| (Input.GetButtonDown("Jump"))){
selectedIndex = menuSelection(menuOptions, selectedIndex, "enter");
player.Quit = false;
player.paused = false;
}
}
if ((player.Quit == false)&& player.paused == false){
Screen.showCursor = false;
Time.timeScale = 1.0;
}
if(player.paused == true){
(VolOut());
}else{
(Volin());
}
if(player.playerScore <= 4){
level1time += Time.deltaTime;
}
if(player.playerScore >= 5){
spiller.rigidbody.isKinematic = true;
player.gameover = true;
(VolOut());
if(level1time < PlayerPrefs.GetFloat("level1")){
PlayerPrefs.SetFloat("level1",level1time);
PlayerPrefs.SetString("name1",scoremenu.mainname);
high = 130;
}
LoadLevel(3, 2.5);
}
if(Input.GetKeyDown("m")) {
if(audio.mute)
audio.mute = false;
else
audio.mute = true;
}
}
function menuSelection (menuItems : String[], selectedItem : int, direction : String) {
if (direction == "enter") {
if (selectedItem == 0) {
player.q2 = false;
player.Quit = false;
}else if
(selectedItem == 1){
Application.LoadLevel(0);
}else if
(selectedItem == 2){
Application.Quit();
}
}
if (direction == "up") {
if (selectedItem == 0) {
selectedItem = menuItems.length - 1;
} else {
selectedItem -= 1;
}
}
if (direction == "down") {
if (selectedItem == menuItems.length - 1) {
selectedItem = 0;
} else {
selectedItem += 1;
}
}
return selectedItem;
}
var Design : GUISkin;
function OnGUI () {
GUI.skin = Design;
GUI.Label(Rect(10,10,200,50),"Level: 1");
GUI.Label(Rect(10,40,200,50),"Coins: " + player.playerScore);
GUI.Label(Rect(115,40,200,50),"/5");
GUI.Label(Rect(10,70,200,50),"Lives: " + player.playerLives);
GUI.Label(Rect(10,100,300,50),"Timer: " + someString);
GUI.Label(Rect(10,high,200,50),"New HighScore");
GUI.SetNextControlName ("menu01");
if (GUI.Button(Rect(Screen.width/2-b,Screen.height/2-h1,150,30),"Return To Game")){
player.q2 = false;
player.Quit = false;
}
GUI.SetNextControlName ("menu02");
if (GUI.Button(Rect(Screen.width/2-b,Screen.height/2-h2,150,30),"Main Menu")){
Application.LoadLevel(0);
}
GUI.SetNextControlName ("menu03");
if (GUI.Button(Rect(Screen.width/2-b,Screen.height/2-h3,150,30),"Quit Game")){
Application.Quit();
}
GUI.FocusControl (menuOptions[selectedIndex]);
}
function showtime(){
var min:int;
var sec:int;
var fra:int;
var time01 :String;
min = level1time/60;
sec = level1time%60;
fra = level1time * 1000;
fra = fra % 1000;
someString = String.Format("{0:00}:{1:00}.{2:000}", min, sec,fra);
}
function PlayerCompletedGame() {
guiText.text = Time.timeSinceLevelLoad.ToString();
}
function LoadLevel(level: int, delay: float){
// wait the delay time...
yield WaitForSeconds(delay);
// then load the level:
Application.LoadLevel(level);
}
function fadeOut(){
audio.volume -= 0.05 * Time.deltaTime;
yield WaitForSeconds(0.1);
audio.volume -= 0.05 * Time.deltaTime;
yield WaitForSeconds(0.1);
audio.volume -= 0.05 * Time.deltaTime;
}
function VolOut(){
while(audio.volume>0.05){
audio.volume-=0.001;
yield;
}
}
function Volin(){
while(audio.volume<0.2){
audio.volume += 0.001;
yield;
}
}
Script error: Update() can not be a coroutine. i can`t use yield ind Update ()
– Poulpcyes, only problem i have now it that Time.timeScale = 0.0, os i can`t use WaitForSeconds
– Poulpc