Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 16.09.2011, 16:53
Genzo вне форума Посмотреть профиль Отправить личное сообщение для Genzo Посетить домашнюю страницу Genzo Найти все сообщения от Genzo
  № 11  
Ответить с цитированием
Genzo
 
Аватар для Genzo

блогер
Регистрация: Feb 2010
Адрес: MSK
Сообщений: 859
Записей в блоге: 3
Отправить сообщение для Genzo с помощью ICQ Отправить сообщение для Genzo с помощью Skype™
Код AS3:
var squaresNum:uint = /*КОЛ-ВО КВАДРАТОВ*/;
                var offset:uint = /*РАССТОЯНИЕ МЕЖДУ КВАДРАТАМИ*/;
                var colsNum:uint = Math.floor(stage.stageWidth / (square.width + offset)); 
 
                for(var i:uint = 0;i<squaresNum;i++)
                {
                    var square:MySquare = new MySquare(String(i) );
                    square.x = (square.width + offset) * (i % colsNum); 
                    square.y = (square.height + offset) * Math.floor(i / colsNum);
                    addChild(square);
                }
__________________
Gamedev != Gaming (http://twitter.com/#!/GenzoDev). Don't forget to [+] if it works.

Старый 17.09.2011, 12:17
Lyso вне форума Посмотреть профиль Отправить личное сообщение для Lyso Посетить домашнюю страницу Lyso Найти все сообщения от Lyso
  № 12  
Ответить с цитированием
Lyso

Регистрация: Sep 2010
Адрес: Красноярск
Сообщений: 217
Отправить сообщение для Lyso с помощью Skype™
Не работает ваш код! Я хочу решить проблемы двойным циклом, но не знаю, до какого числа надо ставить счетчики в обоих циклах.
__________________
Humanity.push(new Man());

Старый 17.09.2011, 14:12
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 13  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
Цитата:
но не знаю, до какого числа надо ставить счетчики в обоих циклах.
Да любые, какие нужно. Можно и переменные воткнуть, которые будут расчитываться где-то в другом месте. Все зависит от поставленной задачи

Старый 17.09.2011, 19:09
Lyso вне форума Посмотреть профиль Отправить личное сообщение для Lyso Посетить домашнюю страницу Lyso Найти все сообщения от Lyso
  № 14  
Ответить с цитированием
Lyso

Регистрация: Sep 2010
Адрес: Красноярск
Сообщений: 217
Отправить сообщение для Lyso с помощью Skype™
Вы меня не понимаете. Например у меня есть переменная numSq = 20;

Тогда как сделать цикл, который выведет построчно 20 квадратов, в каждой строке по 3 квадрата?

Код AS3:
for (var i:uint = 0; i < Math.ceil(numSq / 3); i++ )
			{
				for (var j:uint = 0; j < ?????!!!!????!!!!; j++ )
				{
					var sq:Sq = new Sq(String(i));
 
					sq.x = j * sq.width;
					sq.y = i * sq.height;
					addChild(sq);
				}
 
			}
__________________
Humanity.push(new Man());

Старый 17.09.2011, 19:17
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 15  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Код AS3:
var a = 1
var b = 2
 
for (var i:uint = 0; i < a; i++ )
			{
				for (var j:uint = 0; j < b; j++ )
				{
 
				}
 
			}
В чем косяк ?)))
__________________
Марк Tween

Старый 17.09.2011, 19:27
Lyso вне форума Посмотреть профиль Отправить личное сообщение для Lyso Посетить домашнюю страницу Lyso Найти все сообщения от Lyso
  № 16  
Ответить с цитированием
Lyso

Регистрация: Sep 2010
Адрес: Красноярск
Сообщений: 217
Отправить сообщение для Lyso с помощью Skype™
Пф... Откуда я знаю переменные a и b? У меня только общее число квадратов.
__________________
Humanity.push(new Man());

Старый 17.09.2011, 19:47
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 17  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
Цитата:
Вы меня не понимаете. Например у меня есть переменная numSq = 20;

Тогда как сделать цикл, который выведет построчно 20 квадратов, в каждой строке по 3 квадрата?
Пф.. ну хотя бы так:
Код AS3:
package  {
	import flash.display.Sprite;
 
	public class Squares extends Sprite {
 
		public function Squares() {
 
			var maxSquares:	int = 20;
			var increment:	int = 0;
			var rows:	int = 3;
 
			for (var i:int = 0; i < 100; i++) {					// пофиг сколько тут поставить, хоть тысячу, все равно после 20 все остановится
				for (var j:int = 0; j < rows; j++) {
					var s:Square = new Square(increment);
					s.x = j * s.width;
					s.y = i * s.height;
					addChild(s);
					increment ++;
					if (increment == maxSquares) return;		// как достигнуто максимальное число, обрываем функцию
				}
			}
		}	
	}
}
 
import flash.text.TextField;
 
internal class Square extends flash.display.Sprite {
 
	private var _width:	Number = 40;
	private var _height:	Number = 40;
 
	public function Square(number:int) {
		graphics.beginFill(100000000 * Math.random(), 1);
		graphics.drawRect(0, 0, _width, _height);
		graphics.endFill();
		var tf:TextField = new TextField();
		tf.autoSize = "left";
		tf.text = String(number);
		addChild(tf);
	}
	override public function get width():Number {
		return _width;
	}
	override public function get height():Number {
		return _height;
	}
}


Последний раз редактировалось goodguy; 17.09.2011 в 19:50.
Старый 17.09.2011, 20:03
Lyso вне форума Посмотреть профиль Отправить личное сообщение для Lyso Посетить домашнюю страницу Lyso Найти все сообщения от Lyso
  № 18  
Ответить с цитированием
Lyso

Регистрация: Sep 2010
Адрес: Красноярск
Сообщений: 217
Отправить сообщение для Lyso с помощью Skype™
Огромное спасибо, не пришло на ум это решение.
__________________
Humanity.push(new Man());

Старый 06.10.2011, 15:55
teion вне форума Посмотреть профиль Отправить личное сообщение для teion Найти все сообщения от teion
  № 19  
Ответить с цитированием
teion

Регистрация: Mar 2011
Сообщений: 72
а, может, есть у кого решение, как выводить те же квадраты не только построчно, но и блоками?
типа:

1 2 3 //10 11 12
4 5 6 //13 14 15
7 8 9 //16 17 18

всю голову уже сломал

Старый 06.10.2011, 16:23
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 20  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
определить сколько квадратов должно быть в каждом блоке, и при достижении их количества, равного нужному, просто добавлять, например к переменной х, ширину блока + отступ. Хз правильно ли я понял вопрос

Создать новую тему Ответ Часовой пояс GMT +4, время: 09:08.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 09:08.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.