Пятница, 29 Марта 2024, 03:27

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Форум игроделов » Записи участника » JSent [523]
Результаты поиска
JSentДата: Воскресенье, 19 Января 2014, 11:38 | Сообщение # 81 | Тема: Вопрос-[ответ] по Unity
постоянный участник
Сейчас нет на сайте
Хотел сделать перемещение врага туда-обратно (привет из Марио), но что то пошло не так.
Вот скрипт перемещения объекта из начальной точки в конечную:
Код
using UnityEngine;
using System.Collections;

public class NewBehaviourScript : MonoBehaviour {

  //Цель (пункт Б)
  public Transform target;
   
  //Стартовая позиция
  private Vector3 _startPos;
  //Конечная позиция
  private Vector3 _endPos;

  private Vector3 temp;

  // Use this for initialization
  void Start () {

   //Запоминаем начальную и конечную позиции
   _startPos = transform.position;
   _endPos = target.position;
   
  }
   
  // Update is called once per frame
  void Update () {

   transform.position = Vector3.Lerp(_startPos, _endPos, Time.time/2);

               
  }

}


Работает. Но чтобы он возвращался в исходную точку, так сказать патрулировал, добавил в Update():

Код
if (transform.position == _endPos)
{
temp =_startPos; _startPos =_endPos; _endPos = temp; Debug.Log ("Ok");    
}


Собственно, чтобы поменять начальную и конечную точки местами. Но не работает. В чём может быть дело?


Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Воскресенье, 19 Января 2014, 00:30 | Сообщение # 82 | Тема: Как выйти из режима "ленивой жопы" ?
постоянный участник
Сейчас нет на сайте
beril, никак. Так и останешься "ленивой жопой" на вечно. У тебя нет шансов.



Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Четверг, 16 Января 2014, 18:33 | Сообщение # 83 | Тема: Вопрос-[ответ] по Unity
постоянный участник
Сейчас нет на сайте
Стандартный 3rd Person Controller постоянно бежит. Проигрывается анимация бега, даже если персонаж стоит на месте. При этом другие анимации (walk, idle, jump_pose) не срабатывают. Что это может быть?



Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Среда, 15 Января 2014, 23:38 | Сообщение # 84 | Тема: ООП в Юнити
постоянный участник
Сейчас нет на сайте
KamiRonin, прояснилось, спасибо.

Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Среда, 15 Января 2014, 21:01 | Сообщение # 85 | Тема: ООП в Юнити
постоянный участник
Сейчас нет на сайте
Изучаю.
А ответ на мой вопрос всё-так существует?


Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Среда, 15 Января 2014, 20:03 | Сообщение # 86 | Тема: ООП в Юнити
постоянный участник
Сейчас нет на сайте
Сильно запутался с классами в Юнити. Смотрите, каждый скрипт в проекте представляет собой новый класс? Или всё таки объект? Или как? cry

Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.

Сообщение отредактировал JSent - Среда, 15 Января 2014, 23:37
JSentДата: Вторник, 14 Января 2014, 21:56 | Сообщение # 87 | Тема: Инвестирую в перспективные игровые проекты
постоянный участник
Сейчас нет на сайте
Неопытный инвестор... мне нравится smile .

Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Вторник, 14 Января 2014, 12:54 | Сообщение # 88 | Тема: Да,но...
постоянный участник
Сейчас нет на сайте
Да, но я автор темы.

Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Вторник, 14 Января 2014, 12:53 | Сообщение # 89 | Тема: Рифмаплёт
постоянный участник
Сейчас нет на сайте
Бессмысленны игры где нельзя проиграть,
Где ставки мы ставим на то,
Чтоб рифмы простые сидеть сочинять,
Всё равно, решено, не смешно.
---

Памперс.


Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Вторник, 14 Января 2014, 00:30 | Сообщение # 90 | Тема: Самое противное. Форумная игра
постоянный участник
Сейчас нет на сайте
Кончита Вуртс противнее твоего брата.

Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Вторник, 14 Января 2014, 00:22 | Сообщение # 91 | Тема: Ctrl + V
постоянный участник
Сейчас нет на сайте
Цитата
___§§§§§§§§§§§
__§§§_________§§§§§§§§§§§§§
_§§____§§§§____§§§c§§§§___§§§
§§___§§§§§§§§____§§d§_______§§
§___§§§§§§§§§§§__§§__§§§§§___§§
§___§§§§§§§§§§____§§§§§§§§§___§
§___§§§§§§§§§§__§§§§§§§§§§§___§§§§§§§§
§___§§§§§§§§§§_§§§§§§§§§§§___§§§§____§§§
§____§§§§§§§§§§§§§§§§_____§§§§___§§§§___§§
§§____§§§§§§§§§§§§____§§§§§§___§§§§§§§___§§
_§§____§§§§§§§§§___§§§§§______§§§§§§§§§__§§
__§§____§§§§§§§___§§§§__§§§__§§§§§§§§§§§_§§
___§§____§§§§§§__§§§___§§§§§__§§§§§§§§§§_§§
____§§____§§§§§__§§__§§§§§§§§_§§§§§§§§§§_§§
_____§§____§§§§__§§_§§§§§§§§§§§§§§§§§§§§_§§
______§§§___§§§§_§§_§§§§§§§§§§§§§§§§§§§_§§
________§§___§§___§__§§§§§§§§§§§§§§§§§_§§
_________§§__§___§§§___§§§§§§§§§§§§§§_§§
__________§§__§§§__§§§___§§§§§§§§§§§_§§
__________§§_§§______§§§___§§§§§§§§_§§
__________§§§§_________§§§___§§§§§_§§
__________§§§____________§§§__§§§_§§
__________§________________§§§_§_§§
_____________________________§§_§§
______________________________§§§§
_______________________________§§


Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Вторник, 14 Января 2014, 00:19 | Сообщение # 92 | Тема: Угадай правду!
постоянный участник
Сейчас нет на сайте
Нет, адекватен.
Следующий женат.


Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Суббота, 11 Января 2014, 13:47 | Сообщение # 93 | Тема: Чего вы боитесь?
постоянный участник
Сейчас нет на сайте
Ferrumel, боюсь даже представить как тебе тяжело, но ты должен жить дальше. Ты, определённо, сильный человек, так что не падай духом. smile

Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Суббота, 11 Января 2014, 13:15 | Сообщение # 94 | Тема: Cry Zone
постоянный участник
Сейчас нет на сайте
Жаль что команда разбежалась, а проект загнулся.
Для меня CryZone был примером неограниченных возможностей в моддинге.


Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Четверг, 26 Декабря 2013, 21:17 | Сообщение # 95 | Тема: Длинные числа бросают вызов [2^127]
постоянный участник
Сейчас нет на сайте
Цитата OpenGOO ()

e:\projects\bignumbers\main.c|163|warning C4716: 'minus' : must return a value


Это капризы твоего VS. Надо в конце функции int minus() написать return 0;


Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Четверг, 26 Декабря 2013, 20:30 | Сообщение # 96 | Тема: Длинные числа бросают вызов [2^127]
постоянный участник
Сейчас нет на сайте
OpenGOO, в Dev C++ и VS Express нормально компилируется sad

Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Четверг, 26 Декабря 2013, 20:13 | Сообщение # 97 | Тема: Длинные числа бросают вызов [2^127]
постоянный участник
Сейчас нет на сайте
Собственно задача решена. Выложу, если кому интересно:
Словесное описание алгоритма:

Код
I Основная программа:
1)Введём два числа в два массива и запишем их длины.
2)Если оба числа положительны, то обратимся к алгоритму II.
3)Если оба числа отрицательные, то выведем знак "-" и обратимся к алгоритму II.
4)Если первое число положительно, а второе отрицательно, то преобразуем  
  второе число к положительному виду и обратимся к алгоритму III.
5)Если первое число отрицательно, а второе положительно, то преобразуем
  первое число к положительному виду и обратимся к алгоритму III.
6)Конец.

II Алгоритм сложения:
1)Переведём массивы из символьного типа в целочисленный.
2)Развернём эти массивы, чтобы было удобней складывать.
3)Найдём максимальную длину результата.
4)Сложим массивы столбиком, соблюдая правила арифметики.
5)Убираем лишние нолики перед числом.
6)Выведем результат с конца.
7)Конец.

III Алгоритм сравнения:
//Если одно из чисел отрицательное, то сложение заменится на вычитание.  
//А для вычитания нужно сначала сравнить эти числа.

1)Сравним длины массивов, если один длиннее другого, то это наибольшее число.
2)Если длина одинаковая, то сравним поразрядно.
3)Если числа окажутся равными (по модулю), то результат вычитания 0.
4)Если первое число больше второго, то обратимся к алгоритму IV.
5)Если второе число больше первого, то выведем  "-" и обратимся к алгоритму IV, поменяв числа местами.
6)Конец.

IV Алгоритм вычитания:
1)Переведём массивы из символьного типа в целочисленный.
2)Развернём эти массивы, чтобы было удобней вычитать.
3)Вычтем массивы столбиком, соблюдая правила арифметики. При этом результат сохраняется в 3 массив.
4)Уберём лишние нули перед числом.
5)Выведем результат с конца.
6)Конец.


И сам код:

Код
#include <stdio.h>
#include <conio.h>

//Функция сложения (II)
int sum(char num1[100], char num2[100],
  int max_num1, int max_num2)
{

  int  i, k, temp, size,
   int_num1[100], int_num2[100];

  //Обнуляем два целочисленных массива
  for (i = 0; i <= 100; i++)
  {
   int_num1[i] = 0; int_num2[i] = 0;
  }

  //Перводим их элементы из char в int
  for (i = 0; i <= max_num1; i++)
  {
   int_num1[i] = int(num1[i]) - 48;
  }

  for (i = 0; i <= max_num2; i++)
  {
   int_num2[i] = int(num2[i]) - 48;
  }

  //Разворачиваем оба массива для удобства счёта    
  for (i = 0, k = max_num1; i<k; i++, k--)
  {
   temp = int_num1[i];
   int_num1[i] = int_num1[k];
   int_num1[k] = temp;
  }

  for (i = 0, k = max_num2; i<k; i++, k--)
  {
   temp = int_num2[i];
   int_num2[i] = int_num2[k];
   int_num2[k] = temp;
  }

  //Находим максимальную длину результата    
  if (max_num1 > max_num2)
   size = max_num1 + 1;
  else
   size = max_num2 + 1;

  //Считает столбиком  
  for (i = 0; i <= size; i++)
  {
   int_num2[i] += int_num1[i];
   int_num2[i + 1] += (int_num2[i] / 10);
   int_num2[i] %= 10;
  }

  if (int_num2[size] == 0) size--;
  if (int_num2[size] == 0) size--;

  //Вывод результата
  for (i = size; i >= 0; i--)
   printf("%d", int_num2[i]);
  return 0;
}

//Функция вычитания (IV)
int dif(char num1[100], char num2[100], int size,
  int max_num1, int max_num2)
{
  int i, k, temp, rezult[100], int_num1[100], int_num2[100];

  //Обнуляем три целочисленных массива
  for (i = 0; i <= 100; i++)
  {
   int_num1[i] = 0; int_num2[i] = 0; rezult[i] = 0;
  }

  //Перводим элементы из char в int
  for (i = 0; i <= max_num1; i++)
  {
   int_num1[i] = int(num1[i]) - 48;
  }

  for (i = 0; i <= max_num2; i++)
  {
   int_num2[i] = int(num2[i]) - 48;
  }
  //Разворачиваем оба массива для удобства счёта    
  for (i = 0, k = max_num1; i<k; i++, k--)
  {
   temp = int_num1[i];
   int_num1[i] = int_num1[k];
   int_num1[k] = temp;
  }

  for (i = 0, k = max_num2; i<k; i++, k--)
  {
   temp = int_num2[i];
   int_num2[i] = int_num2[k];
   int_num2[k] = temp;
  }

  //Вычитание столбиком  
  for (i = 0; i <= size; i++)
  {
   if (int_num1[i] >= int_num2[i])
    rezult[i] = int_num1[i] - int_num2[i];
   else
   {
    rezult[i] = int_num1[i] + 10 - int_num2[i];
    int_num1[i + 1]--;
   }
  }

  if (rezult[size] == 0) size--;

  //Вывод
  for (i = size; i >= 0; i--)
   printf("%d", rezult[i]);
  return 0;
}

//Функция сравнения чисел (III)
int minus(char num1[100], char num2[100], int max_num1, int max_num2)
{
  int size, i;
  int k = 3; // если к = 3, значит числа одинаковой длинны
  size = max_num1;

  if (max_num1 > max_num2)
  {
   size = max_num1;
   k = 1; // если к = 1, значит первое число длиннее второго
  }
  else

  if (max_num2 > max_num1)
  {
   size = max_num2;
   k = 2; // если к = 2, значит второе число длиннее первого
  }
  else

   // если числа одинаковой длинны, то необходимо сравнить их  
  for (i = 0; i <= size; i++) // поразрядное сравнение весов чисел
  {
   if (num1[i] > num2[i]) // если разряд первого числа больше
   {
    k = 1;
    break;
   }

   if (num2[i] > num1[i]) // если разряд второго числа больше
   {
    k = 2;
    break;
   }
  }

  if (k == 1) dif(num1, num2, size, max_num1, max_num2);
  if (k == 2) { printf("-"); dif(num2, num1, size, max_num2, max_num1); }
  if (k == 3) printf("%d", 0); //Разность одинаковых - 0

}

//Основная программа (I)
int main()
{
  char num1[100], num2[100];
  int  max_num1 = 0, max_num2 = 0, i = -1;

  //Записываес два огромных числа в два символьных массива
  // и сохраняем максимальный индекс
  do
  {
   i++;
   scanf("%c", &num1[i]);
  }  
        while (num1[i] != 10);

  max_num1 = i - 1;

  i = -1;

   

        do
  {
   i++;
   scanf("%c", &num2[i]);
  }
        while (num2[i] != 10);

  max_num2 = i - 1;

  //Если оба числа положительны, то сложим их функцией sum()
  if (num1[0] != '-' && num2[0] != '-')
   sum(num1, num2, max_num1, max_num2);

  //Если отрицательные, то уберём минусы и сложим функцией sum()
  if (num1[0] == '-' && num2[0] == '-')
  {
   num1[0] = 48; num2[0] = 48;
   printf("-");
   sum(num1, num2, max_num1, max_num2);
  }
  //Если первое положительное, а второе отрицательное,
  // то сложим функцией minus  
  if (num1[0] != '-' && num2[0] == '-')
  {
   num2[0] = 48;
   for (i = 1; i <= max_num2; i++) { num2[i - 1] = num2[i]; }
   num2[i] = 48;
   max_num2--;
   minus(num1, num2, max_num1, max_num2);
  }

  //Если первое отрицательное, а второе положительное,
  // то сложим функцией minus  
  if (num1[0] == '-' && num2[0] != '-')
  {
   num1[0] = 48;
   for (i = 1; i <= max_num1; i++) { num1[i - 1] = num1[i]; }
   num1[i] = 48;
   max_num1--;
   minus(num2, num1, max_num2, max_num1);
  }

  _getch();
  return(0);
}



Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Пятница, 20 Декабря 2013, 10:12 | Сообщение # 98 | Тема: Длинные числа бросают вызов [2^127]
постоянный участник
Сейчас нет на сайте
Оно то понятно. Но, как я смотрю идей получше ни у кого нет.

Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.

Сообщение отредактировал JSent - Пятница, 20 Декабря 2013, 10:13
JSentДата: Пятница, 20 Декабря 2013, 10:10 | Сообщение # 99 | Тема: Угадай правду!
постоянный участник
Сейчас нет на сайте
Нет. А может и да. А может и нет. crazy
Следующий любит запах краски.


Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.
JSentДата: Четверг, 19 Декабря 2013, 21:31 | Сообщение # 100 | Тема: Длинные числа бросают вызов [2^127]
постоянный участник
Сейчас нет на сайте
Собственно задача на длинную арифметику:
"Пользователь вводит 2 больших числа (числа от -1*2^127 до 1*2^127-1). Написать программу для суммирования таких чисел."

Решение очевидно - записать два числа в два массива, а после складывать столбиком. Но на деле всплывает много неприятных тонкостей, такие как знаки "-" и "," Эти нюансы разветвляют программу до неприличия.

Самый большой стандартный тип данных, double, не вмещает в себя такие большие числа. А на написание собственного не хватает ни знаний, ни времени их получать.

Так что требуется хитрость! help Что можете предложить сту[денту?

[Решено]


Программист — человек, больной тяжёлой формой поражения коры головного мозга — интеллектом, который выражается в маниакально-деструктивном стремлении писать непонятные и бессмысленные наборы символов и словосочетаний.

Сообщение отредактировал JSent - Четверг, 26 Декабря 2013, 20:15
Форум игроделов » Записи участника » JSent [523]
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг