Переведите пожалуйста с Js На C# [РЕШЕНО]

Программирование на Юнити.

Переведите пожалуйста с Js На C# [РЕШЕНО]

Сообщение IIIVSIII 30 июл 2010, 12:54

Вообщем я сразу извиняюсь может я гдео чтото просто недоглядел ... но прошу перевести с JS на С
Код: Выделить всё
var   Gilze: Rigidbody = Instantiate(
            Gilza, transform.position, transform.rotation);
            //Задаём ракете начальную скорость Gilze
            Gilze.velocity =
            transform.TransformDirection( Vector3( 0, 0,speedGilza));

На JS этот скрипт работает нормально .... На С# неработает ... я писал так
Код: Выделить всё
public  Rigidbody Gilze = Instantiate(
            Gilza, transform.position, transform.rotation);
            //Задаём ракете начальную скорость Gilze
            Gilze.velocity =
            transform.TransformDirection( Vector3( 0, 0,speedGilza));

Подскажите что я сделал нетак ...
И еще в Js BroadcastMessage("FireR"); ищет и запускает функцию FireR в другом скрипте .. как этоже написать на C#
Последний раз редактировалось IIIVSIII 03 авг 2010, 17:41, всего редактировалось 1 раз.
Аватара пользователя
IIIVSIII
UNIт
 
Сообщения: 61
Зарегистрирован: 24 июн 2010, 07:41
Откуда: Кременчуг
  • ICQ

Re: Переведите пожалуйста с Js На C#

Сообщение Neodrop 30 июл 2010, 13:14

Поищите ссылку на конвертер. Тут на форуме есть.

Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Переведите пожалуйста с Js На C#

Сообщение IIIVSIII 30 июл 2010, 13:51

Neodrop писал(а):Поищите ссылку на конвертер. Тут на форуме есть.


Спасибо конечнже за конвертер :)
Но чтото всёравно никак ... ДА и ктомуже конвертер не сказал как BroadcastMessage("FireR"); в (c#) писать .....
Вот такой код у меня получился

Код: Выделить всё
using UnityEngine;
using System.Collections;

public class testik : MonoBehaviour {
public Rigidbody Gilzes;
   void Start () {
   
   }
   
   void Update ()
   {
      if (Input.GetKeyDown(KeyCode.T))
      {
             Rigidbody Gilze = Instantiate(
            Gilzes, transform.position, transform.rotation);
            //Задаём ракете начальную скорость Gilze
            Gilze.velocity =
            transform.TransformDirection( Vector3( 0, 0, speedGilza));
      }
   }
}

И от такие ошибки остались
Изображение
Аватара пользователя
IIIVSIII
UNIт
 
Сообщения: 61
Зарегистрирован: 24 июн 2010, 07:41
Откуда: Кременчуг
  • ICQ

Re: Переведите пожалуйста с Js На C#

Сообщение PavelCrow 30 июл 2010, 14:11

должно быть примерно так:

Код: Выделить всё
public GameObject Gilzes;
public float speedGilza;
   
void Update () {
      GameObject Gilze = Instantiate(Gilzes, transform.position, transform.rotation) as GameObject;
      Gilze.rigidbody.velocity = transform.TransformDirection(new Vector3( 0, 0,speedGilza));
   }
PavelCrow
UNец
 
Сообщения: 25
Зарегистрирован: 21 май 2009, 10:10

Re: Переведите пожалуйста с Js На C#

Сообщение IIIVSIII 30 июл 2010, 14:17

PavelCrow писал(а):должно быть примерно так:

Код: Выделить всё
public GameObject Gilzes;
public float speedGilza;
   
void Update () {
      GameObject Gilze = Instantiate(Gilzes, transform.position, transform.rotation) as GameObject;
      Gilze.rigidbody.velocity = transform.TransformDirection(new Vector3( 0, 0,speedGilza));
   }


Огромное вам спасибо (3A4OT) \:D/
Ток матерится еще на
Gilze.rigidbody.velocity = transform.TransformDirection(new Vector3( 0, 0,speedGilza));
Изображение
Последний раз редактировалось IIIVSIII 30 июл 2010, 14:40, всего редактировалось 6 раз(а).
Аватара пользователя
IIIVSIII
UNIт
 
Сообщения: 61
Зарегистрирован: 24 июн 2010, 07:41
Откуда: Кременчуг
  • ICQ

Re: Переведите пожалуйста с Js На C#

Сообщение IIIVSIII 30 июл 2010, 14:20

ПОдскажите еще как запустить Функцию с (js) в скрипте на (c#)
НУ или аналог BroadcastMessage("FireR"); в (c#)
Аватара пользователя
IIIVSIII
UNIт
 
Сообщения: 61
Зарегистрирован: 24 июн 2010, 07:41
Откуда: Кременчуг
  • ICQ

Re: Переведите пожалуйста с Js На C#

Сообщение Neodrop 30 июл 2010, 16:17

Форум забит ответами на этот вопрос. Пройдите туториалы.
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Переведите пожалуйста с Js На C#

Сообщение Zaicheg 30 июл 2010, 16:28

IIIVSIII писал(а):ПОдскажите еще как запустить Функцию с (js) в скрипте на (c#)
НУ или аналог BroadcastMessage("FireR"); в (c#)

BroadcastMessage работает в шарпе.
Пользуйтесь месседжами или читайте в справке порядок компиляции.
Дьяченко Роман
e-mail: _zaicheg.reg@gmail.com
skype: zaicheg12
vkontakte: _vk.com/zaichegq
Работа: _wie3.com _www.sanviz.com
Аватара пользователя
Zaicheg
Адепт
 
Сообщения: 3024
Зарегистрирован: 19 июн 2009, 15:12
Откуда: Череповец

Re: Переведите пожалуйста с Js На C#

Сообщение IIIVSIII 30 июл 2010, 17:44

Neodrop писал(а):Форум забит ответами на этот вопрос. Пройдите туториалы.

ПРосто большенство туториалов на (js)
Аватара пользователя
IIIVSIII
UNIт
 
Сообщения: 61
Зарегистрирован: 24 июн 2010, 07:41
Откуда: Кременчуг
  • ICQ

Re: Переведите пожалуйста с Js На C#

Сообщение Neodrop 30 июл 2010, 18:59

GetComponent
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Переведите пожалуйста с Js На C#

Сообщение Faps 31 июл 2010, 10:20

материться на
Gilze.rigidbody.velocity = transform.TransformDirection(new Vector3( 0, 0,speedGilza));
возможно из-за того что на префабе нет ригидбоди

юзай эдд компонент на го
или через редактор добавь ригидбоди в префаб
Faps
UNIт
 
Сообщения: 73
Зарегистрирован: 29 май 2010, 13:21

Re: Переведите пожалуйста с Js На C#

Сообщение IIIVSIII 31 июл 2010, 13:57

Faps писал(а):материться на
Gilze.rigidbody.velocity = transform.TransformDirection(new Vector3( 0, 0,speedGilza));
возможно из-за того что на префабе нет ригидбоди

юзай эдд компонент на го
или через редактор добавь ригидбоди в префаб


rigidbody есть 100%... Я проверил ... да и первая строчка срабатует ... Обьект появляется с физикой и падает в низ .. :-B
Ктомуже у меня в переменной указан тип обьекта Rigidbody я бы несмог нанести ГО без Rigidbody ... :-o
Аватара пользователя
IIIVSIII
UNIт
 
Сообщения: 61
Зарегистрирован: 24 июн 2010, 07:41
Откуда: Кременчуг
  • ICQ

Re: Переведите пожалуйста с Js На C#

Сообщение Grin 01 авг 2010, 03:24

Ошибка похоже связана с Instantiate. Отличие этого метода в C# от JS уже обсуждалось здесь http://unity3d.ru/distribution/viewtopic.php?f=18&t=2232.
Grin
UNец
 
Сообщения: 34
Зарегистрирован: 12 июл 2010, 04:45
Откуда: Россия, г. Челябинск
  • ICQ

Re: Переведите пожалуйста с Js На C#

Сообщение IIIVSIII 01 авг 2010, 14:09

Grin писал(а):Ошибка похоже связана с Instantiate. Отличие этого метода в C# от JS уже обсуждалось здесь http://unity3d.ru/distribution/viewtopic.php?f=18&t=2232.

Спасибо ... НАшел что хотел .. вот только возник еще вопросик
:-?? вообщем обьект летит вперёд ... но если повернутся на 180 градусов то обьект уже будет лететь назад ... Как зделать чтобы он всегда летел прямо относительно конкретного обьекта(того с которого он вылитает) ?
вот код который я использую
Код: Выделить всё
GameObject Gilze = Instantiate(Gilza, transform.position, new  Quaternion(0,0,0,0)) as GameObject;
Rigidbody missileRBody = Gilze.GetComponent<Rigidbody>();
missileRBody.velocity = new Vector3(2,0,0);


ПРобывал просто изменить missileRBody.localVelocity = new Vector3(2,0,0); Матерится .. и нерабтает .. (((
И еще как можно изменить позицию создания нового объекта ? НУ скажем чобы объект создавался не поцентру объекта а скараю или или вообще где-то сбоку ^:)^
Аватара пользователя
IIIVSIII
UNIт
 
Сообщения: 61
Зарегистрирован: 24 июн 2010, 07:41
Откуда: Кременчуг
  • ICQ

Re: Переведите пожалуйста с Js На C#

Сообщение Zaicheg 01 авг 2010, 14:35

IIIVSIII писал(а):Как зделать чтобы он всегда летел прямо относительно конкретного обьекта(того с которого он вылитает) ?

Transform.TransformDirection
Дьяченко Роман
e-mail: _zaicheg.reg@gmail.com
skype: zaicheg12
vkontakte: _vk.com/zaichegq
Работа: _wie3.com _www.sanviz.com
Аватара пользователя
Zaicheg
Адепт
 
Сообщения: 3024
Зарегистрирован: 19 июн 2009, 15:12
Откуда: Череповец

След.

Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 7