Ativar/Desativar Complemento
3 participantes
Página 1 de 1
Ativar/Desativar Complemento
Olá
Estou precisando de um code que ative/desative um complemento (AudioSource) somente se a variavel (Ativo) estiver em true.. (PS: Preciso desse code em JS, mais caso queira mandar em JS e também em C# ficarei grato..)
Exemplo:
function Update () {
if (Ativo) {
if ( rotor_Velocity > 1.0 ) {
rotor_Velocity = 1.0;
}else if ( rotor_Velocity < 0.0 ) {
rotor_Velocity = 0.0;
}
if(Ativo == true)
{
EXECUTAR AçÂO PARA ATIVAR O COMPLEMENTO (AudioSource) DE UM OBJETO (Heli) JUNTO COM A VARIABLE "Ativo"
}
}
}
Espero que dê para entender
Grato.
Estou precisando de um code que ative/desative um complemento (AudioSource) somente se a variavel (Ativo) estiver em true.. (PS: Preciso desse code em JS, mais caso queira mandar em JS e também em C# ficarei grato..)
Exemplo:
function Update () {
if (Ativo) {
if ( rotor_Velocity > 1.0 ) {
rotor_Velocity = 1.0;
}else if ( rotor_Velocity < 0.0 ) {
rotor_Velocity = 0.0;
}
if(Ativo == true)
{
EXECUTAR AçÂO PARA ATIVAR O COMPLEMENTO (AudioSource) DE UM OBJETO (Heli) JUNTO COM A VARIABLE "Ativo"
}
}
}
Espero que dê para entender
Grato.
WiredD- Avançado
- PONTOS : 3325
REPUTAÇÃO : 14
Respeito as regras :
Re: Ativar/Desativar Complemento
- Código:
var Ativo:boolean;
var Heli:GameObject;
function Start(){
Ativo=false;
Heli.GetComponent(AudioSource).enabled=false;
}
function Update () {
if (Ativo==false) {
if ( rotor_Velocity >= 1.0 ) {
rotor_Velocity = 1.0;
}else
if ( rotor_Velocity <= 0.0 ) {
rotor_Velocity = 0.0;
}
}
if(Ativo == true){
Heli.GetComponent(AudioSource).enabled=true;
}
}
não sei se era assim q tu qria
qualquer duvida é so falar
PS:é a primeira vez que consigo ajudar alguem
danyllo106- Avançado
- PONTOS : 3521
REPUTAÇÃO : 7
Idade : 27
Respeito as regras :
Re: Ativar/Desativar Complemento
danyllo106 escreveu:
- Código:
var Ativo:boolean;
var Heli:GameObject;
function Start(){
Ativo=false;
Heli.GetComponent(AudioSource).enabled=false;
}
function Update () {
if (Ativo==false) {
if ( rotor_Velocity >= 1.0 ) {
rotor_Velocity = 1.0;
}else
if ( rotor_Velocity <= 0.0 ) {
rotor_Velocity = 0.0;
}
}
if(Ativo == true){
Heli.GetComponent(AudioSource).enabled=true;
}
}
não sei se era assim q tu qria
qualquer duvida é so falar
PS:é a primeira vez que consigo ajudar alguem
Não funcionou :/ Ele ainda inicia com o complemento ativo, não desligou da forma que eu preciso ;-;
WiredD- Avançado
- PONTOS : 3325
REPUTAÇÃO : 14
Respeito as regras :
Re: Ativar/Desativar Complemento
C# ( O script deve ter o nome "Ativ", ou o nome da classe deve ser ajustado)
- Código:
using UnityEngine;
using System.Collections;
public class Ativ : MonoBehaviour {
public bool Ativo;
public GameObject Heli;
void Start(){
Ativo = false;
Heli.GetComponent<AudioSource>().enabled=false;
}
void Update () {
if(Ativo == true){
Heli.GetComponent<AudioSource>().enabled=true;
}
}
}
Re: Ativar/Desativar Complemento
MarcosSchultz escreveu:C# ( O script deve ter o nome "Ativ", ou o nome da classe deve ser ajustado)
- Código:
using UnityEngine;
using System.Collections;
public class Ativ : MonoBehaviour {
public bool Ativo;
public GameObject Heli;
void Start(){
Ativo = false;
Heli.GetComponent<AudioSource>().enabled=false;
}
void Update () {
if(Ativo == true){
Heli.GetComponent<AudioSource>().enabled=true;
}
}
}
Mais e o code Em Javascript (No caso o mais importante...) como ocorre a correção do buug do print?
WiredD- Avançado
- PONTOS : 3325
REPUTAÇÃO : 14
Respeito as regras :
Re: Ativar/Desativar Complemento
Mas por que usar javaScript se ele vai ser descontinuado futuramente pela Unity???
JavaScript nem tem mais suporte no MonoDevelop
JavaScript nem tem mais suporte no MonoDevelop
Re: Ativar/Desativar Complemento
MarcosSchultz escreveu:Mas por que usar javaScript se ele vai ser descontinuado futuramente pela Unity???
JavaScript nem tem mais suporte no MonoDevelop
Por ter dificuldades em criar um code do 0, Peguei uma base da internet.. De um script de controle de HELI que no caso é em JS (Não encontrei em C#)..
WiredD- Avançado
- PONTOS : 3325
REPUTAÇÃO : 14
Respeito as regras :
Re: Ativar/Desativar Complemento
WiredD escreveu:MarcosSchultz escreveu:Mas por que usar javaScript se ele vai ser descontinuado futuramente pela Unity???
JavaScript nem tem mais suporte no MonoDevelop
Por ter dificuldades em criar um code do 0, Peguei uma base da internet.. De um script de controle de HELI que no caso é em JS (Não encontrei em C#)..
Posta o código completo que a gente converte
Re: Ativar/Desativar Complemento
MarcosSchultz escreveu:WiredD escreveu:MarcosSchultz escreveu:Mas por que usar javaScript se ele vai ser descontinuado futuramente pela Unity???
JavaScript nem tem mais suporte no MonoDevelop
Por ter dificuldades em criar um code do 0, Peguei uma base da internet.. De um script de controle de HELI que no caso é em JS (Não encontrei em C#)..
Posta o código completo que a gente converte
Light Pulse.js: pastebin.com/JEE28WuP
Helicopter Script.js : pastebin.com/HDbcGAEt
Rotor Destruction.js: pastebin.com/eNXXEk8d
WiredD- Avançado
- PONTOS : 3325
REPUTAÇÃO : 14
Respeito as regras :
Re: Ativar/Desativar Complemento
Light Pulse (Deve ter exatamente o nome de "Script1")
Helicopter Script (Deve ter exatamente o nome de "Script2")
Rotor Destruction (Deve ter exatamente o nome de "Script3")
- Código:
using UnityEngine;
using System.Collections;
public class Script1 : MonoBehaviour {
private Light luz;
void Start(){
luz = GetComponent<Light> ();
}
void Update () {
luz.intensity = Mathf.Sin(Time.time );
}
}
Helicopter Script (Deve ter exatamente o nome de "Script2")
- Código:
using UnityEngine;
using System.Collections;
public class Script2 : MonoBehaviour {
public GameObject main_Rotor_GameObject, tail_Rotor_GameObject;
public float max_Rotor_Force = 22241.1081f, max_tail_Rotor_Force = 15000.0f, max_Tail_Rotor_Velocity = 2200.0f, forward_Rotor_Torque_Multiplier = 0.5f, sideways_Rotor_Torque_Multiplier = 0.5f;
private float rotor_Velocity = 0.0f, rotor_Rotation = 0.0f, tail_Rotor_Velocity = 0.0f, tail_Rotor_Rotation = 0.0f;
public static float max_Rotor_Velocity = 7200;
[HideInInspector] public bool main_Rotor_Active = true, tail_Rotor_Active = true;
public bool Ativo;
private Rigidbody corpoRigido;
private AudioSource emissorDeAudio;
private Vector3 torqueValue;
void Start() {
Ativo = false;
corpoRigido = GetComponent<Rigidbody> ();
emissorDeAudio = GetComponent<AudioSource> ();
}
void FixedUpdate () {
torqueValue = Vector3.zero;
Vector3 controlTorque = new Vector3(Input.GetAxis("Vertical") * forward_Rotor_Torque_Multiplier, 1.0f, -Input.GetAxis( "Horizontal2" ) * sideways_Rotor_Torque_Multiplier );
if ( main_Rotor_Active == true ) {
torqueValue += (controlTorque * max_Rotor_Force * rotor_Velocity);
corpoRigido.AddRelativeForce( Vector3.up * max_Rotor_Force * rotor_Velocity );
if (Vector3.Angle( Vector3.up, transform.up ) < 80 ) {
transform.rotation = Quaternion.Slerp( transform.rotation, Quaternion.Euler( 0, transform.rotation.eulerAngles.y, 0 ), Time.deltaTime * rotor_Velocity * 2 );
}
}
if ( tail_Rotor_Active == true ) {
torqueValue -= (Vector3.up * max_tail_Rotor_Force * tail_Rotor_Velocity);
}
corpoRigido.AddRelativeTorque( torqueValue );
}
void Update () {
if (Ativo) {
emissorDeAudio.pitch = rotor_Velocity;
if ( main_Rotor_Active == true ) {
main_Rotor_GameObject.transform.rotation = transform.rotation * Quaternion.Euler( 0, rotor_Rotation, 0 );
}
if ( tail_Rotor_Active == true ) {
tail_Rotor_GameObject.transform.rotation = transform.rotation * Quaternion.Euler( tail_Rotor_Rotation, 0, 0 );
}
rotor_Rotation += max_Rotor_Velocity * rotor_Velocity * Time.deltaTime;
tail_Rotor_Rotation += max_Tail_Rotor_Velocity * rotor_Velocity * Time.deltaTime;
var hover_Rotor_Velocity = (corpoRigido.mass * Mathf.Abs( Physics.gravity.y ) / max_Rotor_Force);
var hover_Tail_Rotor_Velocity = (max_Rotor_Force * rotor_Velocity) / max_tail_Rotor_Force;
if ( Input.GetAxis( "Vertical2" ) != 0.0f ) {
rotor_Velocity += Input.GetAxis( "Vertical2" ) * 0.001f;
}else{
rotor_Velocity = Mathf.Lerp( rotor_Velocity, hover_Rotor_Velocity, Time.deltaTime * Time.deltaTime * 5 );
}
tail_Rotor_Velocity = hover_Tail_Rotor_Velocity - Input.GetAxis( "Horizontal" );
if ( rotor_Velocity > 1.0f ) {
rotor_Velocity = 1.0f;
}else if ( rotor_Velocity < 0.0f ) {
rotor_Velocity = 0.0f;
}
}
}
}
Rotor Destruction (Deve ter exatamente o nome de "Script3")
- Código:
using UnityEngine;
using System.Collections;
public class Script3 : MonoBehaviour {
public string rotor_Name;
public GameObject main_Body, explosion_Prefab;
void OnTriggerEnter () {
if (rotor_Name == "MainRotor" ) {
main_Body.GetComponent<Script2>().main_Rotor_Active = false;
}else if ( rotor_Name == "TailRotor" ) {
main_Body.GetComponent<Script2>().tail_Rotor_Active = false;
}
Instantiate( explosion_Prefab, transform.position, transform.rotation );
Destroy(gameObject);
}
}
Re: Ativar/Desativar Complemento
MarcosSchultz escreveu:Light Pulse (Deve ter exatamente o nome de "Script1")
- Código:
using UnityEngine;
using System.Collections;
public class Script1 : MonoBehaviour {
private Light luz;
void Start(){
luz = GetComponent<Light> ();
}
void Update () {
luz.intensity = Mathf.Sin(Time.time );
}
}
Helicopter Script (Deve ter exatamente o nome de "Script2")
- Código:
using UnityEngine;
using System.Collections;
public class Script2 : MonoBehaviour {
public GameObject main_Rotor_GameObject, tail_Rotor_GameObject;
public float max_Rotor_Force = 22241.1081f, max_tail_Rotor_Force = 15000.0f, max_Tail_Rotor_Velocity = 2200.0f, forward_Rotor_Torque_Multiplier = 0.5f, sideways_Rotor_Torque_Multiplier = 0.5f;
private float rotor_Velocity = 0.0f, rotor_Rotation = 0.0f, tail_Rotor_Velocity = 0.0f, tail_Rotor_Rotation = 0.0f;
public static float max_Rotor_Velocity = 7200;
[HideInInspector] public bool main_Rotor_Active = true, tail_Rotor_Active = true;
public bool Ativo;
private Rigidbody corpoRigido;
private AudioSource emissorDeAudio;
private Vector3 torqueValue;
void Start() {
Ativo = false;
corpoRigido = GetComponent<Rigidbody> ();
emissorDeAudio = GetComponent<AudioSource> ();
}
void FixedUpdate () {
torqueValue = Vector3.zero;
Vector3 controlTorque = new Vector3(Input.GetAxis("Vertical") * forward_Rotor_Torque_Multiplier, 1.0f, -Input.GetAxis( "Horizontal2" ) * sideways_Rotor_Torque_Multiplier );
if ( main_Rotor_Active == true ) {
torqueValue += (controlTorque * max_Rotor_Force * rotor_Velocity);
corpoRigido.AddRelativeForce( Vector3.up * max_Rotor_Force * rotor_Velocity );
if (Vector3.Angle( Vector3.up, transform.up ) < 80 ) {
transform.rotation = Quaternion.Slerp( transform.rotation, Quaternion.Euler( 0, transform.rotation.eulerAngles.y, 0 ), Time.deltaTime * rotor_Velocity * 2 );
}
}
if ( tail_Rotor_Active == true ) {
torqueValue -= (Vector3.up * max_tail_Rotor_Force * tail_Rotor_Velocity);
}
corpoRigido.AddRelativeTorque( torqueValue );
}
void Update () {
if (Ativo) {
emissorDeAudio.pitch = rotor_Velocity;
if ( main_Rotor_Active == true ) {
main_Rotor_GameObject.transform.rotation = transform.rotation * Quaternion.Euler( 0, rotor_Rotation, 0 );
}
if ( tail_Rotor_Active == true ) {
tail_Rotor_GameObject.transform.rotation = transform.rotation * Quaternion.Euler( tail_Rotor_Rotation, 0, 0 );
}
rotor_Rotation += max_Rotor_Velocity * rotor_Velocity * Time.deltaTime;
tail_Rotor_Rotation += max_Tail_Rotor_Velocity * rotor_Velocity * Time.deltaTime;
var hover_Rotor_Velocity = (corpoRigido.mass * Mathf.Abs( Physics.gravity.y ) / max_Rotor_Force);
var hover_Tail_Rotor_Velocity = (max_Rotor_Force * rotor_Velocity) / max_tail_Rotor_Force;
if ( Input.GetAxis( "Vertical2" ) != 0.0f ) {
rotor_Velocity += Input.GetAxis( "Vertical2" ) * 0.001f;
}else{
rotor_Velocity = Mathf.Lerp( rotor_Velocity, hover_Rotor_Velocity, Time.deltaTime * Time.deltaTime * 5 );
}
tail_Rotor_Velocity = hover_Tail_Rotor_Velocity - Input.GetAxis( "Horizontal" );
if ( rotor_Velocity > 1.0f ) {
rotor_Velocity = 1.0f;
}else if ( rotor_Velocity < 0.0f ) {
rotor_Velocity = 0.0f;
}
}
}
}
Rotor Destruction (Deve ter exatamente o nome de "Script3")
- Código:
using UnityEngine;
using System.Collections;
public class Script3 : MonoBehaviour {
public string rotor_Name;
public GameObject main_Body, explosion_Prefab;
void OnTriggerEnter () {
if (rotor_Name == "MainRotor" ) {
main_Body.GetComponent<Script2>().main_Rotor_Active = false;
}else if ( rotor_Name == "TailRotor" ) {
main_Body.GetComponent<Script2>().tail_Rotor_Active = false;
}
Instantiate( explosion_Prefab, transform.position, transform.rotation );
Destroy(gameObject);
}
}
Opa, Vlw <3 Estarei testando e complementando com o sistema de Ativar/Desativar complemento AudioSource
Grato
WiredD- Avançado
- PONTOS : 3325
REPUTAÇÃO : 14
Respeito as regras :
Re: Ativar/Desativar Complemento
Sim kkk buguei ao digitar..
Não funcionou infelizmente Schultz, Apenas o da light Pulse
Os outros heli não tem controle (no caso nem se mexe)
E os rotores, helices, não giram ;-;
Não funcionou infelizmente Schultz, Apenas o da light Pulse
Os outros heli não tem controle (no caso nem se mexe)
E os rotores, helices, não giram ;-;
WiredD- Avançado
- PONTOS : 3325
REPUTAÇÃO : 14
Respeito as regras :
Re: Ativar/Desativar Complemento
MarcosSchultz escreveu:Tem como enviar a cena??? aqui funcionou O.o
Fiz o envio por "MP", está em sua inbox o link, e novamente obrigado.
WiredD- Avançado
- PONTOS : 3325
REPUTAÇÃO : 14
Respeito as regras :
Re: Ativar/Desativar Complemento
Tente zipar a pasta assets do seu projeto... esse .unity não está indo, tem apenas 52k, tem que mandar tudo pra poder ver o que tem
Re: Ativar/Desativar Complemento
MarcosSchultz escreveu:Tente zipar a pasta assets do seu projeto... esse .unity não está indo, tem apenas 52k, tem que mandar tudo pra poder ver o que tem
Estarei zipando e enviando
[EDIT] -> Assets enviadas via MP
WiredD- Avançado
- PONTOS : 3325
REPUTAÇÃO : 14
Respeito as regras :
Re: Ativar/Desativar Complemento
Em qual cena do asset que você tentou montar o sistema??? não achei nada aqui, só um outro asset já em C# que funciona certin
Re: Ativar/Desativar Complemento
MarcosSchultz escreveu:Em qual cena do asset que você tentou montar o sistema??? não achei nada aqui, só um outro asset já em C# que funciona certin
Basta substituir os scripts do heli que esta com o sistema em JS, no caso o unico na cena principal (principal.unity) pelos scripts em C#, que no qual não pegaram aqui.. ;-;
WiredD- Avançado
- PONTOS : 3325
REPUTAÇÃO : 14
Respeito as regras :
Re: Ativar/Desativar Complemento
MarcosSchultz escreveu:Em JavaScript funcionava?
Sim, ainda funciona, e estou usando atualmente em JS
WiredD- Avançado
- PONTOS : 3325
REPUTAÇÃO : 14
Respeito as regras :
Tópicos semelhantes
» Ativar e desativar botão UI
» Ativar e desativar o emission
» Ativar/Desativar Sprites
» Desativar e ativar Player
» Otimizacão por Colisor - (Desativar/Ativar)
» Ativar e desativar o emission
» Ativar/Desativar Sprites
» Desativar e ativar Player
» Otimizacão por Colisor - (Desativar/Ativar)
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos