forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Type (http://forum.boolean.name/showthread.php?t=19891)

L-ee-X 11.07.2015 20:22

Ответ: Type
 
Цитата:

Сообщение от St_AnGer (Сообщение 297655)
Покажите пожалуйста кто нибудь про какой код он говорит... Заинтриговали, а найти никак не могу. У меня просто в голове не укладывается как можно писать на Сях сложные конструкции, и не понять условие на грёбаном бейсике.

Держи :)
PHP код:

Type Entity 
 Field Mesh 
 Field Name

 
Field HP 
End Type 

Graphics3D 800
,600,32,
camera 
CreateCamera() 

For 
1 To 10 
Bot
.Entity = New Entity 
Bot
\HP 100 
Bot
\Name$ = Handle(Bot
Bot\Mesh CreateCube() 
NameEntity Bot\MeshBot\Name
PositionEntity Bot\MeshRnd(-50,50), Rnd(-50,50), 50 
NameEntity Bot
\Mesh,Bot\Name$+Chr(34)+"Bot"+Chr(34
EntityPickMode Bot\Mesh,
Next   
old
.entity=Null 
Repeat 

RenderWorld
() 

If 
MouseDown(1
ent=CameraPick(camera,MouseX(),MouseY()) 
        If 
ent<>0 Then 
            old 
set.entity  
            set
=FindEntity(ent
            
Text 1010 EntityName(ent) + " HP = " set\HP 
            
If MouseHit(2
            
set\HP set\HP 10 
            
EndIf 
        
End If 
End If 

Flip() 

Until (KeyHit(1)) 

End 

Function FindEntity.entity(ent
    
name=EntityName(ent
    Return 
Object.entity(name
End Function 

Можешь ему не объяснять, он не вкурит это. :SOS:

softcrasoft 11.07.2015 20:32

Ответ: Type
 
вкурю. если вы даже не потрудились даже слово сказать про set. кстати в вашем хваленом переводе, про set ничего нет. и ненадо мне тут тереть что это переменная. там ниже идет set =, а до этого set.entity.

L-ee-X 11.07.2015 20:33

Ответ: Type
 
Велком, чуть чуть по другому, без всяких set'ов....
PHP код:

Type Entity 
 Field Mesh 
 Field Name

 
Field HP 
End Type 

Graphics3D 800
,600,32,
camera 
CreateCamera() 

For 
1 To 10 
Bot
.Entity = New Entity 
Bot
\HP 100 
Bot
\Name$ = Handle(Bot
Bot\Mesh CreateCube() 
NameEntity Bot\MeshBot\Name
PositionEntity Bot\MeshRnd(-50,50), Rnd(-50,50), 50 
NameEntity Bot
\Mesh,Bot\Name$+Chr(34)+"Bot"+Chr(34
EntityPickMode Bot\Mesh,
Next   


Repeat 

RenderWorld
() 

If 
MouseDown(1
ent=CameraPick(camera,MouseX(),MouseY()) 
        If 
ent<>0 Then 
                Bot
.Entity=Object.Entity(EntityName(ent))
                
Text 1010 EntityName(ent) + " HP = " Bot\HP
            
If MouseHit(2
                
Bot\HP Bot\HP -1
            
EndIf 
        
End If 
End If 

Flip() 

Until (KeyHit(1)) 

End 

Дабы не загружать тебя лишней инфой.

Gector 11.07.2015 20:40

Ответ: Type
 
Цитата:

Сообщение от softcrasoft (Сообщение 297666)
вкурю. если вы даже не потрудились даже слово сказать про set. кстати в вашем хваленом переводе, про set ничего нет. и ненадо мне тут тереть что это переменная. там ниже идет set =, а до этого set.entity.

Set - это не ключевое слово, а переменная. По нему и не может быть никакого хелпа. Если вместо нее написать yoba - ничего не изменится.

softcrasoft 11.07.2015 20:55

Ответ: Type
 
сет то пропало, зато появилось object.entity. ****************Bot.Entity=Object.Entity(EntityNam e(ent))
bot.entity это указатель на объект типа. а object?
по поводу сет. там сначало писалось set.entity, а затем писалось set =. выходит,ю что set.entity указатель на что-то...

L-ee-X 11.07.2015 21:02

Ответ: Type
 
Bot.Entity=Object.Entity(EntityName(ent))
OBJECT

Теперь необходимо через хендл элемента типа получить доступ к полям элемента - получить указатель на элемент обратно. Выглядит это так
указатель.имя_типа=Object.имя_типа(хендл_элемента) .

softcrasoft 11.07.2015 21:58

Ответ: Type
 
ничего не понял из того, что вы написали.
конструкцию ffff.entity=object я знаю, а object.entity хрен знает что за строка и что она делает

L-ee-X 11.07.2015 22:09

Ответ: Type
 
указатель.имя_типа=Object.имя_типа(хендл_элемента)

softcrasoft 11.07.2015 22:12

Ответ: Type
 
вы не поняли, я повторю
у вас в коде этого нет у вас object.entity а не bot.entity=object.

L-ee-X 11.07.2015 22:15

Ответ: Type
 
А почему должно быть object. ???????? Я же тебе описание команды даю указатель.имя_типа=Object.имя_типа(хендл_элемента)

L-ee-X 11.07.2015 22:18

Ответ: Type
 
Object.Entity - Entity это имя типа в данном случае Type Entity

ABTOMAT 11.07.2015 22:35

Ответ: Type
 
Цитата:

Сообщение от Gector (Сообщение 297660)
Базовые принципы одни и те же. Человеку понимающему классы и структуры в плюсах ничего не стоит понять как работают типы. Только нужно привыкнуть к синтаксису, но уж никак не вникать в основы программирования с нуля.
Есть даже такое понятие - псевдокод. Он как раз пишется для понимания алгоритма. Но ты спрашиваешь не алгоритм, а именно синтаксические конструкции, при том базовые.

Ну вообще справедливости ради надо сказать, что с Блица довольно тяжело слезать на что-то Си-подобное (после Бейсика Си кажется чем-то инопланетным). Зато после Си легко влезть и на C++ и на C# и на PHP и на JavaScript.

Но это только из-за синтаксиса. В Бейсике код пишется почти что человекопонятным языком (If Then Endif Repeat Until For To Do), а в Си там инопланетные скобки). А базовые принципы одинаковы, да.

softcrasoft 11.07.2015 22:37

Ответ: Type
 
почему object а не bot.entity тогда? ничего не пойму. про указатель object я знаю. я увидел в коде object.entity. и спрашиваю, потому что в типе объект bot.

L-ee-X 11.07.2015 23:06

Ответ: Type
 
Бля я пас. Уже просто не знаю как ему вдолбить. Он реально тупой...

Кирпи4 12.07.2015 01:34

Ответ: Type
 
Цитата:

Сообщение от softcrasoft (Сообщение 297680)
почему object а не bot.entity тогда? ничего не пойму. про указатель object я знаю. я увидел в коде object.entity. и спрашиваю, потому что в типе объект bot.

Успокойся, отложи программирование, выпей чайку. Как видишь, ты уже всех заебал. Может быть, стоит задуматься - а нужен ли тебе вообще кодинг как таковой, если ты не можешь разобраться в одной, простейшей конструкции?

Object и Handle нужны для того, чтобы хранить ссылку на объект некоторого типа в виде инта. Зачем? Ну например ты хочешь набить инты в массив, или повесить на энтити привязанный к ней Type-объект.

Handle - это получение инта из указанного объекта. Не забивай голову, что это там ссылка какая то или что то ещё - это ебучее число, которое вернёт функция, можно считать за уникальный номер объекта, у каждого объекта оно будет своим.

Object вернёт тебе объект по его уникальному номеру, но после обжекта через точку тебе надо дописать имя типа объекта.

Честно говоря да, ты действительно не хочешь включать голову...


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

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