forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   2D-программирование (http://forum.boolean.name/forumdisplay.php?f=109)
-   -   Что то тупит совсем у мну блиц... (http://forum.boolean.name/showthread.php?t=13497)

Reizel 14.10.2010 19:59

Что то тупит совсем у мну блиц...
 
Type Hgt
Field Snd:TSound
Field Name:String
EndType


Type Sound
Global LIST:TList=New TList

Function Load(File:String)
While(True)
K=K+1
snd:TSound=Null
snd=LoadSound("Source/Sounds/"+File+"_"+K+".wav")
If(Snd=Null) Exit
S.Hgt=New Hgt
S.Snd=Snd
S.Name=File
ListAddLast(LIST,S)
Wend
EndFunction

Function GetRandom:TSound( file:String )
For S:Hgt=EachIn LIST
If(S.Name=File) K=K+1
Next
R=Rand(1,K)
K=0
For S:Hgt=EachIn LIST
If(S.Name=File) K=K+1
If(K=R) Return S.Snd
Next
EndFunction
EndType


Вот код. В функции GetRandom Ругается на на первую же строчку, говорит что идентификатора Hgt нет. Упорно так. Я и названия менял, и по всякому - ему похрен, юзал копипаст названий, и ему всеравно пофиг!!!
Можт в блицмаксе есть лимит на кол-во типов??????????

Reks888 14.10.2010 20:03

Ответ: Что то тупит совсем у мну блиц...
 
Замени
S.Hgt=New Hgt
на
S:Hgt=New Hgt
или
S=New Hgt
:-D
Привет, Blitz3d!
Кстати, заглянул бы в справку по New - там сразу написано
Код:

Type MyType
        Field        a,b,c
End Type

Local t:MyType
t=New MyType


Reizel 14.10.2010 20:08

Ответ: Что то тупит совсем у мну блиц...
 
Ох твою ж мать....Чувак, спасибо!!! Я прост сене сижу за БМаксом 5 часов(!) вот видать и переглючило мне моск...Надо ж было так наипацо....

Randomize 14.10.2010 20:20

Ответ: Что то тупит совсем у мну блиц...
 
Цитата:

Сообщение от Павел
...

Для начала.
Используй нормальный Ide.
Стандартный в топку.

Всегда указывай Local или Global при определении переменной.

Типы объявлять не умеешь.
ИмяПеременной:Тип
Тоесть:
PHP код:

S.Hgt = New Hgt 

Надо писать:
PHP код:

S:Hgt = New Hgt 

Символ точки служит для доступа к методу или свойству типа (почти аналог "\" )

В начале главного файла всегда пиши SuperStrict иначе так и останешься блицером.

А вобще бери на анализ твой код, только отформатированый нормально и рабочий:
PHP код:

SuperStrict

Type Hgt
    Field Snd
:TSound
    Field Name
:String
EndType


Type Sound
    
Global LIST:TList = New TList

    
Function Load(File:String)
        
Local k:Intsnd:TSound
    
        
While(True)
            
1
            snd 
Null
            snd 
LoadSound("Source/Sounds/" File "_" ".wav")
            If(
Snd Null) Exit
            
Local S:Hgt = New Hgt
            S
.Snd Snd
            S
.Name File
            ListAddLast
(LIST, S)
        
Wend
    EndFunction

    
Function GetRandom:TSound(file:String)
        
Local k:Int 0
        Local R
:Int
        
        
For Local S:Hgt EachIn LIST
            If(
S.Name File1
        Next
        R 
Rand(1k)
        
0
        
For Local S:Hgt EachIn LIST
            If(
S.Name File1
            
If(R) Return S.Snd
        Next
    EndFunction
EndType 

И статусы в аське читай. Я в игрушку гамал какбе и альттабатся было лень.

Reizel 14.10.2010 20:57

Ответ: Что то тупит совсем у мну блиц...
 
Random, я написал уже львиную часть игры, просто жестоко ступил.
Знаю я про БМакс синтаксис

Reizel 14.10.2010 20:59

Ответ: Что то тупит совсем у мну блиц...
 
ЗЫЖ!!!!
Как лучше реализовать более-менее реалистичный (ну чтоб не совсем уж квадратами) огонь, вид сверху? Кто то можт идейку подкинет???

Randomize 14.10.2010 21:16

Ответ: Что то тупит совсем у мну блиц...
 
Вложений: 1
Посмотри стандартные примеры.
Про партиклы слышал? Тоесть из одной части вылетают большим кол-вом частицы и уходят в альфу. Перед этим естессно меняя цвет.
В твоём случае жёлтый и красный. Можно ещё дымок чёрными.
Прикладываю универсальный спрайт. Из него можно сделать всё.
Это просто белая точка градирующая от центра в альфу.

Reks888 14.10.2010 21:19

Ответ: Что то тупит совсем у мну блиц...
 
Вот есть целый труд про 2д огонь:
http://www.nik.no/2006/Gundersen2.pdf


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot