Предыдущее посещение: менее минуты назад Текущее время: 21 серп 2017, 14:15

Часовой пояс: UTC + 2 часа




 [ Повідомлень: 70 ] 
Теги:
luaGideros
На страницу Пред.  1, 2, 3, 4, 5 , 6, 7  След.
Автор Сообщение
 Заголовок сообщения: Re: Gideros Studio _LUA - примеры -основа создания игр
Сообщение
Відсутній
Администратор
Аватара пользователя

Зарегистрирован: 13 жовт 2010, 00:09
Сообщения: 1645
Изображения: 1
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 47 раз.
Запах
Определение координат углов после масштабирования, под разные соотношения сторон

при масштабировании игры с параметром вписать по ширине, из за разных пропорций дисплеев сверху и снизу возникают пустоты, для того чтобы определить всю зону видимую пользователю, нужно определить координаты углов
Код:: [ Скачать ] [ Скрыть ]
Синтаксис: Lua
--рассчитаем смещение нулевых координат (после масштабирования они смещаются и находятся не в самом углу)
local dx = application:getLogicalTranslateX()/application:getLogicalScaleX()
local dy = application:getLogicalTranslateY()/application:getLogicalScaleY()


--получим  ширину и высоту вписанной комнаты
local width = application:getContentWidth()
local height = application:getContentHeight()

--определяем координаты углов
--верх слева
ball:setPosition(-dx, -dy)
--верх справа
ball:setPosition(dx+width-ball:getWidth(), -dy)
--низ слева
ball:setPosition(-dx, dy + height-ball:getHeight())
--низ справа
ball:setPosition(dx+width-ball:getWidth(), dy + heightball:getHeight())

_________________

програміст- характерникпошта: admin@simart.info
skype: razorback577
Замовлення не беру


Вернуться к началу
  
 
 Заголовок сообщения: Re: Gideros Studio _LUA - примеры -основа создания игр
Сообщение
Відсутній
Администратор
Аватара пользователя

Зарегистрирован: 13 жовт 2010, 00:09
Сообщения: 1645
Изображения: 1
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 47 раз.
Запах
Алгоритм случайного лабиринта на LUA заданных размеров, и между любыми двумя точками всегда есть единственный маршрут.
Пример был взят здесь :
Скрытый текст. Необходимо зарегистрироваться.
- и немного адаптирован под гидерос
Код:: [ Скачать ] [ Скрыть ]
Синтаксис: Lua
labirint=""
line = {}
math.randomseed(os.time())
--------------------------------------------
width, height = 20,20    -- размер лабиринта
--------------------------------------------
for i = 1, width, 1 do
 labirint=labirint.."._"                    -- write the top line
 line[i] = {left = i, right = i } -- init the linked lists
end

labirint=labirint..".\n"

line[width+1] = {left = tonumber(width)} -- secure a border case behavior

for j = 1, height, 1 do
   labirint=labirint.."|" -- левая стенка
  for i = 1, width, 1 do
    right, down = "|", " " -- defaults, no change to the list structure
    if line[i+1].left ~= i then
      -- consider skipping a wall here, as that won't make a cycle
      if (j == tonumber(height) and line[i].left == i) or
         math.random() < 0.5 then
        right = "."
        -- join the lists of i and i+1
        -- the combined list will be circularly ordered; that's not true
        -- for such lists in general, but follows here from
        -- nontrivial properties of the two lists deriving from their
        -- meaning (they can't "interleave")
        line[line[i+1].left].right = line[i].right
        line[line[i].right].left = line[i+1].left
        line[i].right, line[i+1].left = i+1, i
      end
    end
    if j == tonumber(height) -- last line
       or (line[i].left ~= i and math.random() < 0.5) then
      down = "_"
      -- tear this cell out of its list
      line[line[i].left].right = line[i].right
      line[line[i].right].left = line[i].left
      line[i].left, line[i].right = i, i
    end
 labirint=labirint..(down..right)
  end
 labirint=labirint.."\n"
end

print(labirint)


Вот такой лабиринт выведет в консоль
Код:
_._._._._._._._._._._._._._._._._._._._.
| |_. ._| . | ._._._. ._. ._._| |_. . . |
| | | . . | | | |_. |_|_. |_. |_. | |_| |
|_. |_| | | ._| | . | . . | | | . ._| |_|
| | |_. |_| | | . | |_| |_. | . |_. |_. |
|_. | ._|_._._._|_| ._| ._|_|_|_. | ._| |
| . | ._._| |_. ._| | |_| |_. . | |_. . |
| |_._. | ._| | . |_. | | ._._| ._._|_| |
| | | | . | | | |_._. . ._|_._. | |_. . |
|_|_. | |_| ._|_. | |_|_. ._._|_._| |_|_|
| | |_. ._|_._. |_|_._. ._| . ._| | |_. |
| | | | | |_. | ._| | | | |_| | | ._| | |
| . . ._. . | . . | . ._. . | | . | ._| |
| |_| . |_| | | |_._| |_._|_. ._| | | | |
| ._|_|_._| |_| . | . ._. |_. |_._._. ._|
|_| | | | | |_. | |_| ._|_. | ._| ._|_| |
|_. | |_._._| |_|_._|_| | |_| . | | | ._|
| |_. . | |_. ._. | | | |_._._| . | | | |
| | ._|_._._| | |_._| | | | . | | ._|_. |
|_. . |_. | | ._. | | . | | |_. |_. | | |
|_._|_._._._._._|_._._|_._._._|_._|_._._|



еще примеры лабиринтов с исходниками:
Скрытый текст. Необходимо зарегистрироваться.

_________________

програміст- характерникпошта: admin@simart.info
skype: razorback577
Замовлення не беру


Вернуться к началу
  
 
 Заголовок сообщения: Re: Gideros Studio _LUA - примеры -основа создания игр
Сообщение
Відсутній
Администратор
Аватара пользователя

Зарегистрирован: 13 жовт 2010, 00:09
Сообщения: 1645
Изображения: 1
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 47 раз.
Запах
Считаем FPS

Код:: [ Скачать ] [ Скрыть ]
Синтаксис: Lua
local frame = 0
local timer = os.timer()
local function displayFps()
        frame = frame + 1
        if frame == 60 then
                local currentTimer = os.timer()
                print(60 / (currentTimer - timer))
                frame = 0
                timer = currentTimer   
        end
end
 
stage:addEventListener(Event.ENTER_FRAME, displayFps)
 

_________________

програміст- характерникпошта: admin@simart.info
skype: razorback577
Замовлення не беру


Вернуться к началу
  
 
 Заголовок сообщения: Re: Gideros Studio _LUA - примеры -основа создания игр
Сообщение
Відсутній
Администратор
Аватара пользователя

Зарегистрирован: 13 жовт 2010, 00:09
Сообщения: 1645
Изображения: 1
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 47 раз.
Запах
Еще полезные функции

Удалить всех детей спрайта
Код:: [ Скачать ] [ Скрыть ]
Синтаксис: Lua
function clear(sprite)
    while sprite:getNumChildren() > 0 do
        sprite:removeChildAt(1)
    end
end
 


Удалить все обьекты в уровне
Код:: [ Скачать ] [ Скрыть ]
Синтаксис: Lua
function clearStage()
        local numChildren=stage:getNumChildren()
        for i=1,numChildren do
                stage:getChildAt(1):removeFromParent()
        end
end



Код:: [ Скачать ] [ Скрыть ]
Синтаксис: Lua
-- ПЕРЕМІСТИТИ З ЗАДАНОЮ ШВИДКІСТЮ
function speed_move(sprite,x2,y2,speed)
        speed=speed/1000*60  --60fps
        x1, y1 = sprite:getPosition()

        sprite.move = MovieClip.new{
                        {1, speed, sprite, {x = {x1, x2, "linear"},y = {y1, y2, "linear"}}}  -- проиграть с 1 до 100кадра с движением по оси  Х от 0 до 200
                }
        sprite.move:gotoAndPlay(1)
end
 




Код:: [ Скачать ] [ Скрыть ]
Синтаксис: Lua
-- МАСШТАБ З ЗАДАНОЮ ШВИДКІСТЮ
function speed_scale(sprite,xs2,ys2,speed)

        xs1, ys1 = sprite:getScale()
        speed=speed/1000*60
        sprite.scale = MovieClip.new{
                {1, speed, sprite, {scaleX = {xs1, xs2, "linear"},scaleY = {ys1, ys2, "linear"}}}  -- проиграть с 1 до 100кадра с движением по оси  Х от 0 до 200
        }
        sprite.scale:gotoAndPlay(1)
end


Код:: [ Скачать ] [ Скрыть ]
Синтаксис: Lua
-- прозрачність З ЗАДАНОЮ ШВИДКІСТЮ
function speed_fade(sprite,alpha2,speed)

        alpha1 = sprite:getAlpha()
        speed=speed/1000*60
        sprite.fade = MovieClip.new{
                {1, speed, sprite, {alpha = {alpha1, alpha2, "linear"}}}  
        }
        sprite.fade:gotoAndPlay(1)
end

_________________

програміст- характерникпошта: admin@simart.info
skype: razorback577
Замовлення не беру


Вернуться к началу
  
 
 Заголовок сообщения: Re: Gideros Studio _LUA - примеры -основа создания игр
Сообщение
Відсутній
Администратор
Аватара пользователя

Зарегистрирован: 13 жовт 2010, 00:09
Сообщения: 1645
Изображения: 1
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 47 раз.
Запах
Підбір кириличних шрифтів
Скрытый текст. Необходимо зарегистрироваться.

_________________

програміст- характерникпошта: admin@simart.info
skype: razorback577
Замовлення не беру


Вернуться к началу
  
 
 Заголовок сообщения: Re: Gideros Studio _LUA - примеры -основа создания игр
Сообщение
Відсутній
Администратор
Аватара пользователя

Зарегистрирован: 13 жовт 2010, 00:09
Сообщения: 1645
Изображения: 1
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 47 раз.
Запах
УВЕСЬ САЙТ GIDEROS ДОКУМЕНТАШКА ПО АПІ В АРХІВІ


У вас немає повноважень для перегляду вкладень в поточному повідомленні

_________________

програміст- характерникпошта: admin@simart.info
skype: razorback577
Замовлення не беру


Вернуться к началу
  
 
 Заголовок сообщения: Re: Gideros Studio _LUA - примеры -основа создания игр
Сообщение
Відсутній
Администратор
Аватара пользователя

Зарегистрирован: 13 жовт 2010, 00:09
Сообщения: 1645
Изображения: 1
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 47 раз.
Запах
стабилизировать скорость
моя функция стабилизации скорости к нужному значению "increase speed"
speedY -текущая скорость по Y
speedX -текущая скорость по Х
300 - новая скорость по вектору

Код:: [ Скачать ] [ Скрыть ]
Синтаксис: Lua
  -----increase 300-----------------------------------
        local a=math.sqrt(math.abs(speedX)^2+math.abs(speedY)^2)  --тек скорорость
                a=a/300
                speedX=speedX/a
                speedY=speedY/a
               
        ----------------------------------------

_________________

програміст- характерникпошта: admin@simart.info
skype: razorback577
Замовлення не беру


Вернуться к началу
  
 
 Заголовок сообщения: Re: Gideros Studio _LUA - примеры -основа создания игр
Сообщение
Відсутній
Администратор
Аватара пользователя

Зарегистрирован: 13 жовт 2010, 00:09
Сообщения: 1645
Изображения: 1
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 47 раз.
Запах
ОЧЕНЬ ПОЛЕЗНАЯ ФУНКЦИЯ АВТОПОВОРОТ ЕКРАНА ПРИ ПЕРЕВОРАЧИВАНИИ- поскольку у меня электро-розетка слева а гнездо зарядки на планшете справа - очень раздражают игры где нельзя перевернуть экран
Код:: [ Скачать ] [ Скрыть ]
Синтаксис: Lua
-------------------------------------------
--                      АКСЕЛЕРОМЕТР РОЗВЕРТАТИ ЕКРАН
-------------------------------------------
 accelerometer = Accelerometer.new()
accelerometer:start()
        function accelerometer_onEnterFrame(event)
                local x, y, z = accelerometer:getAcceleration()
                if x>0.95 then application:setOrientation(Application.LANDSCAPE_RIGHT)  end
                if x<-0.95 then application:setOrientation(Application.LANDSCAPE_LEFT )  end
                --print(x, y, z)

        end
stage:addEventListener(Event.ENTER_FRAME, accelerometer_onEnterFrame)

_________________

програміст- характерникпошта: admin@simart.info
skype: razorback577
Замовлення не беру


Вернуться к началу
  
 
 Заголовок сообщения: Re: Gideros Studio _LUA - примеры -основа создания игр
Сообщение
Відсутній
Администратор
Аватара пользователя

Зарегистрирован: 13 жовт 2010, 00:09
Сообщения: 1645
Изображения: 1
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 47 раз.
Запах
Движение спрайта на заданньій угол с заданной скоростью

Код:: [ Скачать ] [ Скрыть ]
Синтаксис: Lua
self:addEventListener(Event.ENTER_FRAME, self.onEnterFrame, self) --создаем событие
         
         self.speed=200  --скорость
         self.angl=322   --угол




function self:onEnterFrame(event)


       
       
    self:setX(self:getX()+math.cos(self.angl)*self.speed/60)
         self:setY(self:getY()+math.sin(self.angl)*self.speed/60)
       


end
 

_________________

програміст- характерникпошта: admin@simart.info
skype: razorback577
Замовлення не беру


Вернуться к началу
  
 
 Заголовок сообщения: Re: Gideros Studio _LUA - примеры -основа создания игр
Сообщение
Відсутній
Администратор
Аватара пользователя

Зарегистрирован: 13 жовт 2010, 00:09
Сообщения: 1645
Изображения: 1
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 47 раз.
Запах
ПРИКЛАДИ КОРИСТУВАЦЬКИХ ПОДІЙ

Код:: [ Скачать ] [ Скрыть ]
Синтаксис: Lua
------- Make listener --------
 
-- Make sprite
local sprite = MySprite.new()
 
-- Listener function
local function onEvent(sprite, event)
 
        print(event:getType())
end
 
 
-------- Example A ----------
 
-- Add a Listener
sprite:addListener("goat", onEvent, sprite)
 
-- Dispatch Event: Good!
sprite:dispatchEvent(Event.new("goat"))
 
 
-- Remove Listener
sprite:removeListener("goat")
 
-- Dispatch Event: Nothing!
sprite:dispatchEvent(Event.new("goat"))
 
 
-------- Example B ------------
 
-- Add a couple Listeners
sprite:addListener("beast", onEvent, sprite)
sprite:addListener("cheese", onEvent, sprite)
 
-- Dispatch those events: Good!
sprite:dispatchEvent(Event.new("beast"))
sprite:dispatchEvent(Event.new("cheese"))
 
 
-- Remove all Listeners
sprite:removeAllListeners()
 
-- Dispatch those events: Nothing!
sprite:dispatchEvent(Event.new("beast"))
sprite:dispatchEvent(Event.new("cheese"))
 
 
------ Example C ---------------
 
-- Make another sprite ( note: doesn't have to be MySprtie class )
local otherSprite = Sprite.new()
 
-- Add a Listener to target otherSprite
sprite:addListener("chicken", onEvent, sprite, otherSprite)
 
-- Dispatch event: good!
otherSprite:dispatchEvent(Event.new("chicken"))
 
-- Remove listener for other sprite
sprite:removeListener("chicken")
 
-- Dispatch event: Nothing!
otherSprite:dispatchEvent(Event.new("chicken"))




И мой вариант
Код:: [ Скачать ] [ Скрыть ]
Синтаксис: Lua

sprite1= Core.class(Sprite)
function sprite1:init(x)
        ---бла бла бла -бла бла бла
        stage:addChild(self)
        stage:addEventListener("onBOSS",function() destroy(self) end)  --создаем слушателя события  для  sprite1
end

--теперь  можно вставлять вызов в любой другой обьект или функцию
--и все обьекты sprite1  - при событии выполнят функцию destroy(self)
stage:dispatchEvent(Event.new("onBOSS")) --вызвать событие

_________________

програміст- характерникпошта: admin@simart.info
skype: razorback577
Замовлення не беру


Вернуться к началу
  
 
 [ Повідомлень: 70 ]  На страницу Пред.  1, 2, 3, 4, 5 , 6, 7  След.
   Похожие темы   Автор   Ответы   Просмотры   Последнее сообщение 
Нет непрочитанных сообщений Урок фотошоп Урок создания реалистичного CD 2282

в форуме не сортированные уроки фотошоп часть:1

Anonymous

0

216

10 вер 2012, 23:46

modules Перейти к последнему сообщению

Нет непрочитанных сообщений Урок фотошоп Подробный урок создания Concept Car. 348

в форуме не сортированные уроки фотошоп часть:1

Anonymous

0

216

10 вер 2012, 02:51

svenom Перейти к последнему сообщению

Нет непрочитанных сообщений урок фотошоп: Быстрый способ создания красочного грандж-пор

в форуме не сортированные уроки фотошоп часть:2

Anonymous

0

296

20 вер 2012, 19:36

Uniform Перейти к последнему сообщению

Нет непрочитанных сообщений урок фотошоп: Два способа создания Tech-lines 312

в форуме не сортированные уроки фотошоп часть:2

Anonymous

0

57

18 вер 2012, 00:05

voumdo Перейти к последнему сообщению

Нет непрочитанных сообщений Урок фотошоп Игра цвета, описание создания нечетких рисунко

в форуме не сортированные уроки фотошоп часть:1

Anonymous

0

161

11 вер 2012, 10:22

fractals Перейти к последнему сообщению


Часовой пояс: UTC + 2 часа


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

Сейчас этот форум просматривают: aretmigo, crawl, demon, Elin, megatester, Photoshop Garden, Ray12, stanislas88, Web Designer Wall, Ульяна, Ванильная и гости: 11


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

Перейти: