AviaSkins.Forums

AviaSkins.Forums (http://forum.aviaskins.com/index.php)
-   Вопросы Новичка8 (http://forum.aviaskins.com/forumdisplay.php?f=17)
-   -   Вопросы Новичка8 для созданию новых МОДов (http://forum.aviaskins.com/showthread.php?t=1509)

Novichok8 24.04.2010 16:22

Вопросы Новичка8 для созданию новых МОДов
 
В данной теме Новичок8 задаёт вопросы по проблемам с созданием МОДов.
модератор



как массив использовать скажите мне кто нибудь?

"Sotka" 24.04.2010 16:29

Цитата:

Сообщение от Novichok8 (Сообщение 53173)
как массив использовать скажите мне кто нибудь?

Тебе в паскале или как?!:D Ты бы уточнил, какой массив...
И, кстати, ты уверен, что в тему пишешь?;) Если нет- свистни, перенесу...

Novichok8 24.04.2010 16:36

в яве.
из 4 чисел например 1 2 3 4 в массиве и надо его возвратить.

Novichok8 24.04.2010 16:38

private static int[] headings
= { 1, 3, 5, 6, 15, 20, 21, 27, 28, 30, 35, 36 };
вот массив вроде как я понял а как его использовать в другом методе и возвратить не знаю. если просто напрямую это написать то игра вылетает с ошибкой.

Novichok8 24.04.2010 16:52

пример рабочий с этим массивом:
массив private static int[] headings
= { 1, 3, 5, 6, 15, 20, 21, 27, 28, 30, 35, 36 };

код
public static void speakHeading(Aircraft aircraft, int i) {
if (Actor.isAlive(aircraft)) {
int i_62_ = (int) (Time.current() / 1000L);
int i_63_ = aircraft.getArmy() - 1 & 0x1;
if (i_62_ >= cur().SpeakHeading[i_63_]) {
cur().SpeakHeading[i_63_] = i_62_ + 20;
for (/**/; i < 0; i += 360) {
/* empty */
}
for (/**/; i >= 360; i -= 360) {
/* empty */
}
i /= 30;
str[0] = 165;
str[1] = headings[i];
str[2] = 0;
airSpeaksNewArray(aircraft, 3, str, 3);
}
}
}
str[1] = headings[i]; эта строка вызывает массив числа в массиве номера звук файлов для говорения лидером высоты.
str[0] = 165; Направление ( 165 отвечает за имя Vector.wav в папке samples\Speech\RU\Actor1
сам массив за файлы типа 100.wav 180.wav и т.д
в самой игре это обьединяеться и получаеться
Направление 180.
То же самое но с Высотой.
массив
private static int[] altitudes = { 2, 4, 7, 19, 26, 29, 34, 37, 41, 42, 46,
47, 53, 54, 58, 59, 63, 64, 68, 69, 8 };
Код public static void speakAltitude(Aircraft aircraft, int i) {
if (Actor.isAlive(aircraft)) {
int i_56_ = (int) (Time.current() / 1000L);
int i_57_ = aircraft.getArmy() - 1 & 0x1;
if (i_56_ >= cur().SpeakAltitude[i_57_]) {
cur().SpeakAltitude[i_57_] = i_56_ + 20;
str[0] = 118;
if (i > 10000)
i = 10000;
if (i < 1)
i = 1;
str[1] = altitudes[i / 500];
str[2] = 0;
airSpeaksNewArray(aircraft, 3, str, 3);
}
}
}
В самом АИ это обьеденяеться вместе и получаеться Направление 360 Высота 05.

Novichok8 24.04.2010 16:54

У меня все проще есть массив.
его надо использовать в
public int aircIndex(Aircraft aircraft) {
String string = aircraft.name();
char c = string.charAt(string.length() - 1);
return c - '0';

}

Novichok8 24.04.2010 16:57

public int aircIndex(Aircraft aircraft) {
int c = 0;
return c;

}
вот так работает при изменении числа 0 на др все меняют номера.
0 это 1
1 это 2
2 это 3 и т.д

Novichok8 25.04.2010 10:39

int[] a;
a = new int[2];
a[0] = 1;
a[1] = 5;
вот сделал массив как возвращать оба значения?


Текущее время: 06:00. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot