Problema no meu script da arma
4 participantes
Página 1 de 1
Problema no meu script da arma
Problema no script quando eu clico pra atirar a bala sai só que ela nasce e cai pra baixo nem anda me ajudem
A e quando eu recarrego só vai uma das 15 balas pro pente,
A e quando eu recarrego só vai uma das 15 balas pro pente,
- Código:
#pragma strict
var MaxAmmo = 15;
var Ammo = MaxAmmo;
var Bullets = 15;
var Bullet : GameObject;
var FirePoint : GameObject;
private var timer = 0.0;
var reloadTime = 2.0;
var Fire : String = "MusketFire";
var reloading : boolean;
function Start ()
{
}
function Update ()
{
if(Fire == "MusketFire")
{
if(Ammo > 0)
{
if(Input.GetMouseButtonDown(0))
{
FireOneBullet();
}
}
}
if(Input.GetKey("r"))
{
Reload();
}
if(reloading) {
if(timer<reloadTime)
{
timer+=Time.deltaTime;
}
else
timer=0.0;
if(timer>=reloadTime)
{
Ammo ++;
Bullets --;
timer=0.0;
reloading = false;
}
}
}
function FireOneBullet ()
{
var Bullet = Instantiate(Bullet, FirePoint.transform.position, transform.rotation);
Ammo --;
}
function Reload ()
{
if(Ammo < MaxAmmo && Bullets > 0)
{
reloading = true;
}
}
Última edição por Eduardoro39 em Qui Ago 04, 2016 8:36 am, editado 1 vez(es)
Eduardoro39- Avançado
- PONTOS : 3257
REPUTAÇÃO : 11
Idade : 24
Respeito as regras :
Re: Problema no meu script da arma
voce só esta instanciando a bala, tem que fazer ela se mover usando rigidibody.addforce ou transforme.translate
Re: Problema no meu script da arma
Guilherme_cj852 escreveu:voce só esta instanciando a bala, tem que fazer ela se mover usando rigidibody.addforce ou transforme.translate
Eu sou novo nisso e não entendi o que é para fazer podia mostrar?
Eduardoro39- Avançado
- PONTOS : 3257
REPUTAÇÃO : 11
Idade : 24
Respeito as regras :
Re: Problema no meu script da arma
eu faço dessa forma(esta em C#):
- Código:
rb = GetComponent<Rigidbody> ();
rb.AddForce (new Vector3 (0, 0, 30.0f) * 50);
Re: Problema no meu script da arma
Guilherme_cj852 escreveu:eu faço dessa forma(esta em C#):
- Código:
rb = GetComponent<Rigidbody> ();
rb.AddForce (new Vector3 (0, 0, 30.0f) * 50);
vlw consegui mais sabe porque só vem uma bala pro pente quando eu recarrego? é o mesmo Script
Eduardoro39- Avançado
- PONTOS : 3257
REPUTAÇÃO : 11
Idade : 24
Respeito as regras :
Re: Problema no meu script da arma
Na variavel "balasPraRecarregar" voce coloca o numero de balas que voce quer que vá para o pente.
- Código:
#pragma strict
var MaxAmmo = 15;
var Ammo = MaxAmmo;
var Bullets = 15;
var balasParaRecarregar = 5;
var Bullet : GameObject;
var FirePoint : GameObject;
private var timer = 0.0;
var reloadTime = 2.0;
var Fire : String = "MusketFire";
var reloading : boolean;
function Start ()
{
}
function Update ()
{
if(Fire == "MusketFire")
{
if(Ammo > 0)
{
if(Input.GetMouseButtonDown(0))
{
FireOneBullet();
}
}
}
if(Input.GetKey("r"))
{
Reload();
}
if(reloading) {
if(timer<reloadTime)
{
timer+=Time.deltaTime;
}
else
timer=0.0;
if(timer>=reloadTime)
{
Ammo = Ammo + balasParaRecarregar;
Bullets = Bullets - balasParaRecarregar;
timer=0.0;
reloading = false;
}
}
}
function FireOneBullet ()
{
var Bullet = Instantiate(Bullet, FirePoint.transform.position, transform.rotation);
Ammo --;
}
function Reload ()
{
if(Ammo < MaxAmmo && Bullets > 0)
{
reloading = true;
}
}
Re: Problema no meu script da arma
Ae sim valeu só mais umas coisinhas vou falando de pouco a pouco pra não se cansar quando eu atiro uma bala das 15 vai pra 14, e eu recarrego e vai pra 29 sabe como resolver isso?só quero que fique 15 no pente aqui o script Vlw e desculpa o encomodoGuilherme_cj852 escreveu:Na variavel "balasPraRecarregar" voce coloca o numero de balas que voce quer que vá para o pente.
- Código:
#pragma strict
var MaxAmmo = 15;
var Ammo = MaxAmmo;
var Bullets = 15;
var balasParaRecarregar = 5;
var Bullet : GameObject;
var FirePoint : GameObject;
private var timer = 0.0;
var reloadTime = 2.0;
var Fire : String = "MusketFire";
var reloading : boolean;
function Start ()
{
}
function Update ()
{
if(Fire == "MusketFire")
{
if(Ammo > 0)
{
if(Input.GetMouseButtonDown(0))
{
FireOneBullet();
}
}
}
if(Input.GetKey("r"))
{
Reload();
}
if(reloading) {
if(timer<reloadTime)
{
timer+=Time.deltaTime;
}
else
timer=0.0;
if(timer>=reloadTime)
{
Ammo = Ammo + balasParaRecarregar;
Bullets = Bullets - balasParaRecarregar;
timer=0.0;
reloading = false;
}
}
}
function FireOneBullet ()
{
var Bullet = Instantiate(Bullet, FirePoint.transform.position, transform.rotation);
Ammo --;
}
function Reload ()
{
if(Ammo < MaxAmmo && Bullets > 0)
{
reloading = true;
}
}
- Código:
#pragma strict
var theBullet : Rigidbody;
var Speed = 20;
var MaxAmmo = 15;
var Ammo = MaxAmmo;
var Bullets = 15;
var balasParaRecarregar = 15;
var Bullet : GameObject;
var FirePoint : GameObject;
private var timer = 0.0;
var reloadTime = 2.0;
var Fire : String = "MusketFire";
var reloading : boolean;
function Start ()
{
}
function Update ()
{
if(Fire == "MusketFire")
{
if(Ammo > 0)
{
if(Input.GetMouseButtonDown(0))
{
FireOneBullet();
}
}
}
if(Input.GetKey("r"))
{
Reload();
}
if(reloading) {
if(timer<reloadTime)
{
timer+=Time.deltaTime;
}
else
timer=0.0;
if(timer>=reloadTime)
{
Ammo = Ammo + balasParaRecarregar;
Bullets = Bullets - balasParaRecarregar;
timer=0.0;
reloading = false;
}
}
}
function FireOneBullet ()
{
var clone = Instantiate(theBullet, transform.position, transform.rotation);
clone.velocity = transform.TransformDirection(Vector3(0, 0, Speed));
Destroy (clone.gameObject, 2);
Ammo --;
}
function Reload ()
{
if(Ammo < MaxAmmo && Bullets > 0)
{
reloading = true;
}
}
Eduardoro39- Avançado
- PONTOS : 3257
REPUTAÇÃO : 11
Idade : 24
Respeito as regras :
Re: Problema no meu script da arma
pegue o valor máximo de balas subtraia pelo o valor atual de balas o resultado e o total de bala que vc que recarregar
e vc tem que verificar se o total de balas e menor que quantidade máxima
ou use o while
e vc tem que verificar se o total de balas e menor que quantidade máxima
ou use o while
Weslley- Moderador
- PONTOS : 5726
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: Problema no meu script da arma
Tente usar:
- Código:
#pragma strict
var theBullet : Rigidbody;
var Speed = 20;
var MaxAmmo = 15;
var Ammo = MaxAmmo;
var Bullets = 15;
var balasParaRecarregar = 15;
var Bullet : GameObject;
var FirePoint : GameObject;
private var timer = 0.0;
var reloadTime = 2.0;
var Fire : String = "MusketFire";
var reloading : boolean;
function Start ()
{
}
function Update ()
{
if(Fire == "MusketFire")
{
if(Ammo > 0)
{
if(Input.GetMouseButtonDown(0))
{
FireOneBullet();
}
}
}
if(Input.GetKey("r"))
{
Reload();
}
if(reloading) {
if(timer<reloadTime)
{
timer+=Time.deltaTime;
}
else
timer=0.0;
if(timer>=reloadTime)
{
Ammo = Ammo + balasParaRecarregar;
Bullets = Bullets - balasParaRecarregar;
timer=0.0;
reloading = false;
}
}
if(Ammo > 15)
{
Ammo = 15;
}
}
function FireOneBullet ()
{
var clone = Instantiate(theBullet, transform.position, transform.rotation);
clone.velocity = transform.TransformDirection(Vector3(0, 0, Speed));
Destroy (clone.gameObject, 2);
Ammo --;
}
function Reload ()
{
if(Ammo < MaxAmmo && Bullets > 0)
{
reloading = true;
}
}
Re: Problema no meu script da arma
vlw vou fazer se der algum problema eu trago para aquiweslleyFx escreveu:pegue o valor máximo de balas subtraia pelo o valor atual de balas o resultado e o total de bala que vc que recarregar
e vc tem que verificar se o total de balas e menor que quantidade máxima
ou use o while
Eduardoro39- Avançado
- PONTOS : 3257
REPUTAÇÃO : 11
Idade : 24
Respeito as regras :
Re: Problema no meu script da arma
funcionou mais o pente vai embora mesmo se tiver 14 balas e recarregarGuilherme_cj852 escreveu:Tente usar:
- Código:
#pragma strict
var theBullet : Rigidbody;
var Speed = 20;
var MaxAmmo = 15;
var Ammo = MaxAmmo;
var Bullets = 15;
var balasParaRecarregar = 15;
var Bullet : GameObject;
var FirePoint : GameObject;
private var timer = 0.0;
var reloadTime = 2.0;
var Fire : String = "MusketFire";
var reloading : boolean;
function Start ()
{
}
function Update ()
{
if(Fire == "MusketFire")
{
if(Ammo > 0)
{
if(Input.GetMouseButtonDown(0))
{
FireOneBullet();
}
}
}
if(Input.GetKey("r"))
{
Reload();
}
if(reloading) {
if(timer<reloadTime)
{
timer+=Time.deltaTime;
}
else
timer=0.0;
if(timer>=reloadTime)
{
Ammo = Ammo + balasParaRecarregar;
Bullets = Bullets - balasParaRecarregar;
timer=0.0;
reloading = false;
}
}
if(Ammo > 15)
{
Ammo = 15;
}
}
function FireOneBullet ()
{
var clone = Instantiate(theBullet, transform.position, transform.rotation);
clone.velocity = transform.TransformDirection(Vector3(0, 0, Speed));
Destroy (clone.gameObject, 2);
Ammo --;
}
function Reload ()
{
if(Ammo < MaxAmmo && Bullets > 0)
{
reloading = true;
}
}
Eduardoro39- Avançado
- PONTOS : 3257
REPUTAÇÃO : 11
Idade : 24
Respeito as regras :
Re: Problema no meu script da arma
Diga, há algum motivo especial para estar usando JavaScript em vez de C#?
Re: Problema no meu script da arma
bom eu ia colocar tudo mais achei melhor nao vai que vcs nao respondem mais meus scripts emtao vou colocar só isso http://prnt.sc/c0vges fiquei minhas ferias toda nisso só vendo video do youtube entrava as 9 da manha saia as 11 da noite pra que pra videos que não explicam direito nao o seu marcos voce foi o que explicou melhor entendi mais do seu do que de outros. ainda nao consegui fazer minha arma atirar em linha reta porque ninguem explica direito.MarcosSchultz escreveu:Diga, há algum motivo especial para estar usando JavaScript em vez de C#?
Mais eu coloco em C# porque eu prefiro e java nao entendo nada
E esse script veja que é em ingles emtão não sou eu que fis por isso esta em java mais eu prefiro C# Ai o script em C# todo bugado feito pelo site
http://www.m2h.nl/files/js_to_c.php
clone não existe é o que o error dis vector3 com error tambem
- Código:
if (clone = Instantiate(theBullet, transform.position, transform.rotation));
clone.velocity = transform.TransformDirection(Vector3(0, 0, Speed));
Destroy(clone.gameObject, 2);
Ammo--;
esse o script
- Código:
using UnityEngine;
using System.Collections;
public class Reloading : MonoBehaviour
{
Rigidbody theBullet;
public float Speed = 20;
public float MaxAmmo = 15;
public float Ammo = MaxAmmo;
public float Bullets = 15;
public float balasParaRecarregar = 15;
GameObject Bullet;
GameObject FirePoint;
private float timer = 0.0f;
private float reloadTime = 2.0f;
string Fire = "MusketFire";
bool reloading;
void Start()
{
}
void Update()
{
if (Fire == "MusketFire")
{
if (Ammo > 0)
{
if (Input.GetMouseButtonDown(0))
{
FireOneBullet();
}
}
}
if (Input.GetKey("r"))
{
Reload();
}
if (reloading)
{
if (timer < reloadTime)
{
timer += Time.deltaTime;
}
else
timer = 0.0f;
if (timer >= reloadTime)
{
Ammo = Ammo + balasParaRecarregar;
Bullets = Bullets - balasParaRecarregar;
timer = 0.0f;
reloading = false;
}
if (Ammo > 15)
Ammo = 15;
}
}
void FireOneBullet()
{
if (clone = Instantiate(theBullet, transform.position, transform.rotation);
clone.velocity = transform.TransformDirection(Vector3(0, 0, Speed));
Destroy(clone.gameObject, 2);
Ammo--;
}
void Reload()
{
if (Ammo < MaxAmmo && Bullets > 0)
{
reloading = true;
}
}
}
Eduardoro39- Avançado
- PONTOS : 3257
REPUTAÇÃO : 11
Idade : 24
Respeito as regras :
Re: Problema no meu script da arma
Espero que nada mude entre nos S2
Eduardoro39- Avançado
- PONTOS : 3257
REPUTAÇÃO : 11
Idade : 24
Respeito as regras :
Re: Problema no meu script da arma
Vou dar um Up neste tópico, por que vou tentar criar um sistema de tiro com Raycast esta semana...
Já vi trocentos mil YouTubers criando sistemas de tiro de forma errada, então vou tentar fazer um tutorial mostrando a maneira correta, e uma opcional com prefab e addForce para quem necessita.
Talvez esta semana ainda o tutorial já saia :D
Já vi trocentos mil YouTubers criando sistemas de tiro de forma errada, então vou tentar fazer um tutorial mostrando a maneira correta, e uma opcional com prefab e addForce para quem necessita.
Talvez esta semana ainda o tutorial já saia :D
Re: Problema no meu script da arma
valeu mais e isso aqui que eu traduzi pra C# sabe resolver o erro?
Erro clone não existe. e o vector3 com erro
Erro clone não existe. e o vector3 com erro
- Código:
if (clone = Instantiate(theBullet, transform.position, transform.rotation));[size=14][/size] clone.velocity = transform.TransformDirection(Vector3(0, 0, Speed));[size=14][/size][size=14][/size] Destroy(clone.gameObject, 2);[size=14][/size] Ammo--;
Eduardoro39- Avançado
- PONTOS : 3257
REPUTAÇÃO : 11
Idade : 24
Respeito as regras :
Re: Problema no meu script da arma
cara, este seu código está MONSTRUOSAMENTE errado.
se você reparar, você está passando o comando instantiate para a variável "clone", e isto dentro de um if, que serve apena para comparações, e ainda está faltando a referência de "as GameObject".
Tem coisas erradas demais ali O.o
se você reparar, você está passando o comando instantiate para a variável "clone", e isto dentro de um if, que serve apena para comparações, e ainda está faltando a referência de "as GameObject".
Tem coisas erradas demais ali O.o
Re: Problema no meu script da arma
nossa ok quando voce for fazer o video de arma não esquece do (Reload, Recoil, Frequencia De tiro,Damage e etc...)MarcosSchultz escreveu:cara, este seu código está MONSTRUOSAMENTE errado.
se você reparar, você está passando o comando instantiate para a variável "clone", e isto dentro de um if, que serve apena para comparações, e ainda está faltando a referência de "as GameObject".
Tem coisas erradas demais ali O.o
Eduardoro39- Avançado
- PONTOS : 3257
REPUTAÇÃO : 11
Idade : 24
Respeito as regras :
Re: Problema no meu script da arma
Eduardoro39 escreveu:nossa ok quando voce for fazer o video de arma não esquece do (Reload, Recoil, Frequencia De tiro,Damage e etc...)MarcosSchultz escreveu:cara, este seu código está MONSTRUOSAMENTE errado.
se você reparar, você está passando o comando instantiate para a variável "clone", e isto dentro de um if, que serve apena para comparações, e ainda está faltando a referência de "as GameObject".
Tem coisas erradas demais ali O.o
Vai ter quase tudo isso eu acho...
Talvez não o recoil, por que o tuto vai ficar muito grande, e ele é meio que particular de cada arma, sendo necessário fazer animação, mas o dano, reload, frequência, munições, etc, etc, vai ter tudo, inclusive, vai ter suporte a várias armas
Re: Problema no meu script da arma
opa ai simMarcosSchultz escreveu:Eduardoro39 escreveu:nossa ok quando voce for fazer o video de arma não esquece do (Reload, Recoil, Frequencia De tiro,Damage e etc...)MarcosSchultz escreveu:cara, este seu código está MONSTRUOSAMENTE errado.
se você reparar, você está passando o comando instantiate para a variável "clone", e isto dentro de um if, que serve apena para comparações, e ainda está faltando a referência de "as GameObject".
Tem coisas erradas demais ali O.o
Vai ter quase tudo isso eu acho...
Talvez não o recoil, por que o tuto vai ficar muito grande, e ele é meio que particular de cada arma, sendo necessário fazer animação, mas o dano, reload, frequência, munições, etc, etc, vai ter tudo, inclusive, vai ter suporte a várias armas
Eduardoro39- Avançado
- PONTOS : 3257
REPUTAÇÃO : 11
Idade : 24
Respeito as regras :
Tópicos semelhantes
» Como resolver o problema de eixo da arma ao executar uma animação?
» Script da arma
» Script de Arma e Muniçao
» [TUTORIAL] Script de arma automatica
» (DÚVIDA) Script Arma e Bala
» Script da arma
» Script de Arma e Muniçao
» [TUTORIAL] Script de arma automatica
» (DÚVIDA) Script Arma e Bala
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos