Всем доброго дня!!! Знаю C# на базовом уровне но никак не могу применить эти знания в Unity3D, а именно ввод на Android устройствах, преимущественно нужны уроки по скриптингу управления персонажем в 2D. Кто в этом хорошо разбирается и имеет опыт прошу помочь, конечно же не бесплатно, за обучение готов заплатить, сумму и способы оплаты оговорим в л\с.
Никто не подскажет как сделать так, чтобы код(будет выложен ниже) кнопки (сделанной из GUI текстуры) поддерживал мультитач?
Вот код:
Код
using UnityEngine; using System.Collections;
public class A_left : MonoBehaviour { public GUITexture btn; //Use this for initialization void Start () { }
//Update is called once per frame void Update () { int count = Input.touchCount; for (int i = 0; i < count; i++) { Touch touch = Input.GetTouch(i); if ( btn.HitTest(touch.position)) transform.position += Vector3.left * 5 * Time.deltaTime; } } }
aalla, спасибо за информацию, посмотрю этот движок .
Жалко конечно если этот двиг мне больше понравится, придется учить заново новый язык, а время потраченное на изучение Unity будет потрачено напрасно . Ну и ладно, кто не ошибается
Здравствуйте! Я учусь программировать на C# и чего греха таить этот ЯП мне нужен для работы в Unity, а точнее сказать для написания игр на Android устройства, я уже тут начинал тему по практике на C#( Помощь опытных C# программистов начинающим (кстати тоже заглядывайте)) и буду ее продолжать(стараться), а так же изучать далее C#, но я хочу на данном этапе пока что научиться писать скрипты для Android на Unity (кстати почему я выбрал C#, а потому что этот язык используется не только в Unity но и в других популярных игровых движках к примеру Neo Axis).
Я эту тему открыл по причине того что я не могу понять как этим классом пользоваться, как делать элементы управления с мультитачем и все что с этим связанно, пересмотрел множество видео но большая часть из этих видео не качественны и несут в себе много ненужного и непонятного, единственные хорошие видео могу сказать это у группы 4Game - Free, но даже в этой группе вопросы по Android, а особенно по элементам управления, освещаются крайне незначительно.
В связи с выше сказанным, не мог бы кто либо более понятно описать класс Input для мобильных устройств, или хотя бы дать ссылки на сайты где хорошо и более или менее все это понятно изложено. Да и вообще посоветовать по этому поводу что либо. А то я сам везде все перерыл аж мозги уж плавятся, не могу найти ничего путного
Написать скрипт для Unity не трудно, есть куча видео уроков, туроров и т.д.
Ну да видео уроков тьма, но 90% из них никчемное дерьмо, где только слышно ааа...мммм......ээээээ и еще всякий шлак и непонятные сленги, ничего толком не обьясняется
KamiRonin, классное решение, вот у тебя все круто в коде по моему мнению
Подкинь ка еще задачку, если конечно есть свободное время, если нет то сам что нибудь поищу, придумаю
Спасибо большое за то что ты со мной так долго мучился и вытягивал меня
Кстати я тут еще калькулятор консольный написал (вспомнил про идею которую мне подкинул First), на четыре действия, вот он вроде ничего так получился )))
Вот код если кому интересно:
Код
[b] namespace ConsoleApplication3 { class Program { static void Main(string[] args) { Console.WriteLine(" Это консольный калькулятор в диалоговом режиме.\n \n Разрешается выполнение четырех операторов:\n"); Console.WriteLine(" Сложение: + \n Вычитание: - \n Умножение: * \n Деление: /\n\n А для десятичных дробей с плавающей точкой используется\n оператор<,> с цифровой клавиатуры "); Console.WriteLine("\n Для продолжения нажмите <Enter>\n\n Для выхода наберите <выход>\n\n Для выполнения следующего выражения вновь нажмите на <Enter>\n");
do { string uCh = Console.ReadLine(); if (uCh == "выход") break;
double a = 0; double b = 0; char c = '0'; try { Console.WriteLine(" Введите первое число:"); a = double.Parse(Console.ReadLine());
Console.WriteLine(" Введите оператор:"); c = char.Parse(Console.ReadLine());
Console.WriteLine(" Введите второе число:"); b = double.Parse(Console.ReadLine());
} catch { Console.WriteLine("Ошибка. Вы что то ввели не верно. \n\n Разрешается только вводить целые и дробные числа, \n\n и четыре оператора <+> <-> <*> </>," + "\n а для десятичных дробей с плавающей точкой используется\n оператор<,> с цифровой клавиатуры"); }
switch (c) { case '+': Console.WriteLine(" Сумма чисел равна: " + (a + b)); break; case '-': Console.WriteLine(" Разность чисел равна: " + (a - b)); break; case '*': Console.WriteLine(" Произведение чисел равно: " + (a * b)); break; case '/': Console.WriteLine(" Отношение чисел равно: " + (a / b)); break; }
} while (true);
} } } [/b]
Кто тоже решил написать выкладывайте свои варианты решения
KamiRonin, спасибо огромное за такую поддержку!!! Очень и очень благодарен!!!
Добавлено (13 февраля 2015, 00:59) --------------------------------------------- KamiRonin, Тоже не пойму почему так, пишу на Visual Studio 2010
Добавлено (13 февраля 2015, 04:33) ---------------------------------------------
KamiRonin, ну вот сделал все с помощью ваших подсказок, но по моему все равно все криво
Вот код:
Код
using System; using System.Collections.Generic; using System.Linq; using System.Text;
namespace ConsoleApplication2 { class Program { static void Main(string[] args) {
Console.WriteLine("Привет! Давай пообщаемся");
Random random = new Random();
string [] otvet = {"Мммм пнятно, давай дальше спрашивай","Ясненько, спроси хоть чем я занимаюсь","давай че нить другое спроси ааа... спроси лучше как мои дела","Спроси че нить другое" }; string [] otvet2 = {"А как меня зовут не надо спрашивать.....ммм??? ......какое невежество" }; string [] whatIsYourName1 = {"Как звать тебя добрый молодец","Ваше имя","Ну че как мне тебя называть" }; string [] whatIsYourName2 = {"не красавец, не урод, не богат, не беден, не румян не бледен, не в парше не в парче а так вообче Федя", "Царь, очень приятно царь","Моё имя Бонд.......Джеймс Бонд"}; string [] howDoYouDo = {"Все пучком","Да пока не родила, когда рожу скажу ","Живу как сыр в масле катаюсь" }; string [] thanBusy = {"Воздух пинаю","Да борюсь не на равных со сном","Пытаюсь телевизор загипнотизировать" };
do { string userChoise = Console.ReadLine(); userChoise = userChoise.ToLower().Trim();
Console.WriteLine("Если желаешь продолжить напиши что нибудь, например - привет))). Если надоело, введи — <выход>");
if (userChoise=="выход") break; if (userChoise=="") break;
if (userChoise.StartsWith("привет")) { string a = whatIsYourName1[random.Next(whatIsYourName1.Length)]; Console.WriteLine(a); } else { string b = otvet[random.Next(otvet.Length)]; Console.WriteLine(b); }
if (userChoise.StartsWith("тебя как зовут?")) { string c = whatIsYourName2[random.Next(whatIsYourName2.Length)]; Console.WriteLine(c); } else { string d = otvet2[random.Next(otvet2.Length)]; Console.WriteLine(d); }
if (userChoise.StartsWith("как дела?")) { string e = howDoYouDo[random.Next(howDoYouDo.Length)]; Console.WriteLine(e); } else { string f = otvet[3]; Console.WriteLine(f); } if (userChoise.StartsWith("что делаешь чем занимаеешься")) { string ab = thanBusy[random.Next(thanBusy.Length)]; Console.WriteLine(ab); } else { string bc = otvet[3]; Console.WriteLine(bc); }
} while (true);
} } }
ЦитатаKamiRonin ()
немного не оптимизировано - но решено.. молоток.
P.S. Еще раз большое спасибо за поддержку и подсказки
Никак не могу врубиться почему при при условии true выполняется первый оператор if и только он, а второй почему то игнорируется а при условии false выполняется последний оператор else а не второй как задумано. Вообще не пойму
Сообщение отредактировал backatom1 - Четверг, 12 Февраля 2015, 14:20
Щас сижу над задачкой KamiRonin, и никак не пойму как делается поиск в строке, может кто подскажет
Добавлено (12 февраля 2015, 09:42) --------------------------------------------- KamiRonin, я вот не смог толком решить задачку, первую вашу, не получается никак, и что то никто другой не выложил своего решения.
Вот примерно как я думаю, но этот код работает неправильно, почему то из двух пар условных операторов if..else срабатывают только if из первой пары и else из второй пары, почему так не понимаю, пытался каждую пару этих операторов поместить в отдельные циклы do...while, то есть два отдельных цикла, но результат тоже был неверным.
namespace ConsoleApplication2 { class Program { static void Main(string[] args) {
Console.WriteLine("Привет! Давай пообщаемся");
do {
Random random = new Random();
string [] otvet = {"Мммм пнятно, давай дальше спрашивай","Ясненько, спроси хоть чем я занимаюсь","давай че нить другое спроси ааа... спроси лучше как мои дела","Спроси че нить другое" }; string [] otvet2 = {"А как меня зовут не надо спрашивать.....ммм??? ......какое невежество" }; string [] whatIsYourName1 = {"Как звать тебя добрый молодец","Ваше имя","Ну че как мне тебя называть" }; string [] whatIsYourName2 = {"не красавец, не урод, не богат, не беден, не румян не бледен, не в парше не в парче а так вообче Федя", "Царь, очень приятно царь","Моё имя Бонд.......Джеймс Бонд"};
string userChoise = Console.ReadLine();
if (userChoise.Contains("привет")) { string a = whatIsYourName1[random.Next(whatIsYourName1.Length)]; Console.WriteLine(a); } else { string b = otvet[random.Next(otvet.Length)]; Console.WriteLine(b); }
First, да я бы с удовольствием, но я то пока простые консольные задачки с трудом решаю, вот и создал эту тему, чтобы опыта набраться и может помощи в понимании всего что связанно с программированием, и понимать код других участников которые решат задачки раньше, а если сам не смогу решить то на основе этих решений уже самому дойти до решения
Добавлено (11 февраля 2015, 12:10) --------------------------------------------- Прошу прощения за предыдущее сообщение, получилось "масло масляное".
Добавлено (11 февраля 2015, 12:11) --------------------------------------------- First, если поможете с чего начать и в которую сторону идти буду премного вам благодарен
KamiRonin, спасибо большое за поддержку и понимание, и огромное спасибо за идею!!! Я надеюсь у этой темы будет будущее и польза!!! Спасибо за задачку, постараюсь решить, хоть и приступая к практике почему то я теряюсь, а читая теорию вроде все понятно
Добавлено (11 февраля 2015, 10:31) --------------------------------------------- Здравствуйте Vinchensoo, может подкинете пару ссылок с хорошими студенческими форумами, а то я не смог найти толковых. Заранее спасибо!
Доброго времени суток всем! Я начинающий программист(самоучка), изучаю C#, и для закрепления материала, нужна практика. то есть какие нибудь задачки по C#. И вот исходя из этого я решил создать эту тему.
Было бы не плохо если опытные C# программисты давали тут, простые и средней сложности задачки(в первое время конечно), а те кому нужен опыт решали бы эти задачи и ответы тоже оставляли бы здесь. Желательно чтоб решения выкладывали все, они были бы неплохими учебными материалами для тех кто бы не смог решить самостоятельно задачку, ну конечно же желательно чтобы код был прокомментирован.
Все кому нужны задачки с различными вариантами решений, давайте попросим помощи у опытных программистов. Помогите нам пожалуйста! Заранее спасибо!
Думаю этот пост будет полезен многим
P. S. Просьба не называть меня плохими словами, я же новичок, и прошу от вас понимания и снисхождения.
Добавлено (10 февраля 2015, 06:31) --------------------------------------------- Я немного неправильно сформулировал, задачки могут кидать не только опытные программисты но и все участники, и сразу же с ответом. А опытные программисты иногда заглядывали сюда и давали советы по решению.