Терабайт исходников
Регистрация: 05.07.2007
Сообщений: 5,196
Написано 1,721 полезных сообщений (для 5,374 пользователей)
|
Ответ: А чё всё по-английски? (срач на тему русского языка в IT)
У меня до сих пор блитц русские буквы не распознаёт, влом научить.
Функции,переменные, и т.д. представлены в виде жестокого транслита,
и мешанины английских слов.
Пример:

Graphics3D 1280,1024,32,1
SetBuffer BackBuffer()
HidePointer
Global God=CreatePivot()
PositionEntity God,0,5,-3
Global camera=CreateCamera(God)
RotateEntity camera,40,0,0
Global light=CreateLight()
TurnEntity light,30,20,0
Global plane=CreatePlane()
EntityPickMode plane,2
planeTexture=LoadTexture("TEX38.BMP")
ScaleTexture planeTexture,2,2
EntityTexture plane,planeTexture
Global cursor=LoadImage("Data\Cursors\Cursor.BMP")
MidHandle cursor
MaskImage cursor,255,255,255
Global Dom1=LoadMesh("Dom1.3DS")
HideEntity Dom1
Global Dom1_krisha=LoadMesh("Dom1_krisha.3DS")
HideEntity Dom1_krisha
Global Dom1_dver=LoadMesh("Dom1-dver.3DS")
HideEntity Dom1_dver
Global Di=LoadAnimMesh("man2a.b3d")
HideEntity Di
Global stroitelstvo#=0
Type Dom1
Field ent
Field ent_k
Field ent_d
Field pick#
Field Delet
End Type
Type Di
Field ent
Field ent_k
Field ent_d
Field pick#
Field Delet
End Type
Function Dom1(X#,Y#,Z#,P#,YA#,R#,SX#,SY#,SZ#)
c.Dom1=New Dom1
c\ent=CopyMesh(Dom1)
CameraPick(camera,MouseX(),MouseY())
PositionEntity c\ent,X#,Y#,Z#
ScaleEntity c\ent,SX#,SY#,SZ#
RotateEntity c\ent,P#,YA#,R#
c\pick#=1
c\ent_k=CopyMesh(Dom1_krisha)
ScaleEntity c\ent_k,0.01,0.01,0.01
c\ent_d=CopyMesh(Dom1_dver)
ScaleEntity c\ent_d,0.01,0.01,0.01
Return True
End Function
Function Di(X2#,Y2#,Z2#,P2#,YA2#,R2#,SX2#,SY2#,SZ2#)
c.Di=New Di
c\ent=CopyMesh(Di)
CameraPick(camera,MouseX(),MouseY())
PositionEntity c\ent,X2#,Y2#,Z2#
ScaleEntity c\ent,SX2#,SY2#,SZ2#
RotateEntity c\ent,P2#,YA2#,R2#
c\pick#=1
Return True
End Function
Function BuildingControl()
If stroitelstvo#=1 Then
For cc.Dom1=Each Dom1
CameraPick(camera,MouseX(),MouseY())
If cc\pick#=1 And PickedEntity()=plane Then
PositionEntity cc\ent,PickedX#(),0,PickedZ#()
PositionEntity cc\ent_k,PickedX#(),0,PickedZ#()
PositionEntity cc\ent_d,PickedX#(),0,PickedZ#()
If MouseDown(2)=True Then
TurnEntity cc\ent,0,1,0
TurnEntity cc\ent_k,0,1,0
TurnEntity cc\ent_d,0,1,0
End If
If MouseDown(1)=True Then
TurnEntity cc\ent,0,-1,0
TurnEntity cc\ent_k,0,-1,0
TurnEntity cc\ent_d,0,-1,0
End If
If cc\pick#=1 And KeyHit(14) Then
cc\pick#=2
stroitelstvo#=0
cc\Delet=1
End If
If stroitelstvo#=1 And cc\pick#=1 And MouseHit(3)=True Then
cc\pick#=2
stroitelstvo#=0
EntityPickMode cc\ent,2
End If
End If
Next
End If
If stroitelstvo#=2 Then
For c.Di=Each Di
CameraPick(camera,MouseX(),MouseY())
If c\pick#=1 And PickedEntity()=plane Then
PositionEntity c\ent,PickedX#(),0,PickedZ#()
If MouseDown(2)=True Then TurnEntity c\ent,0,1,0
If MouseDown(1)=True Then TurnEntity c\ent,0,-1,0
If c\pick#=1 And MouseHit(3)=True Then
c\pick#=2
stroitelstvo#=0
End If
End If
Next
End If
End Function
Function ConstructionsControl()
For c.Dom1=Each Dom1
If EntityDistance(c\ent_k,God)<7 Then
EntityAlpha c\ent_k,0.3
Else
EntityAlpha c\ent_k,1
End If
CameraPick(camera,MouseX(),MouseY())
If MouseDown(2)=True And c\pick#=2 And PickedEntity()=c\ent Then
c\pick#=3
End If
If MouseDown(2)=False And c\pick#=3 And PickedEntity()=c\ent Then
c\pick#=1
stroitelstvo#=1
EntityPickMode c\ent,0
End If
If c\Delet=1 Then
FreeEntity c\ent
FreeEntity c\ent_k
FreeEntity c\ent_d
Delete c
End If
Next
End Function
While Not KeyDown(1)
BuildingControl()
ConstructionsControl()
If KeyDown(32)=True Then TurnEntity God,0,-1,0
If KeyDown(30)=True Then TurnEntity God,0,1,0
If KeyDown(31)=True Then MoveEntity God,0,0,-0.05
If KeyDown(17)=True Then MoveEntity God,0,0,0.05
If stroitelstvo#=0 And KeyHit(28) Then
stroitelstvo#=1
Dom1(PickedX#(),0,PickedZ#(),0,0,0,0.01,0.01,0.01)
End If
If stroitelstvo#=0 And KeyHit(54) Then
stroitelstvo#=2
Di(PickedX#(),0,PickedZ#(),0,0,0,0.1,0.1,0.1)
End If
If KeyHit(64) Then SaveMap("TestMap.sel")
If KeyHit(65) Then
WorldClear()
LoadMap("TestMap.sel")
End If
If KeyHit(66) Then WorldClear()
RenderWorld
UpdateWorld
DrawImage cursor,MouseX(),MouseY()
Flip
Wend
End
Function WorldClear()
Cls
For d.Dom1 = Each Dom1
FreeEntity d\ent
FreeEntity d\ent_k
FreeEntity d\ent_d
Delete d
Next
For do.Di = Each Di
FreeEntity do\ent
Delete do
Next
End Function
Function SaveMap(Name$)
file=WriteFile(Name$)
For d.Dom1 = Each Dom1
WriteInt file, 1
WriteFloat(File,d\pick#)
WriteFloat file,EntityX(d\ent)
WriteFloat file,EntityY(d\ent)
WriteFloat file,EntityZ(d\ent)
WriteFloat file,EntityPitch(d\ent)
WriteFloat file,EntityYaw(d\ent)
WriteFloat file,EntityRoll(d\ent)
WriteFloat file,EntityX(d\ent_k)
WriteFloat file,EntityY(d\ent_k)
WriteFloat file,EntityZ(d\ent_k)
WriteFloat file,EntityPitch(d\ent_k)
WriteFloat file,EntityYaw(d\ent_k)
WriteFloat file,EntityRoll(d\ent_k)
WriteFloat file,EntityX(d\ent_d)
WriteFloat file,EntityY(d\ent_d)
WriteFloat file,EntityZ(d\ent_d)
WriteFloat file,EntityPitch(d\ent_d)
WriteFloat file,EntityYaw(d\ent_d)
WriteFloat file,EntityRoll(d\ent_d)
Next
For do.Di = Each Di
WriteInt file, 2
WriteFloat file,EntityX(do\ent)
WriteFloat file,EntityY(do\ent)
WriteFloat file,EntityZ(do\ent)
WriteFloat file,EntityPitch(do\ent)
WriteFloat file,EntityYaw(do\ent)
WriteFloat file,EntityRoll(do\ent)
WriteFloat file,MeshWidth(do\ent)
WriteFloat file,MeshHeight(do\ent)
WriteFloat file,MeshDepth(do\ent)
WriteFloat(file,do\pick#)
Next
CloseFile(file)
End Function
Function LoadMap(Name$)
stroitelstvo#=0
file=ReadFile(Name$)
While Not Eof(file)
Load = ReadInt(file)
Select Load
Case 1
c.Dom1=New Dom1
c\ent=CopyMesh(Dom1)
c\ent_k=CopyMesh(Dom1_krisha)
c\ent_d=CopyMesh(Dom1_dver)
c\pick#=ReadFloat(File)
a1#=ReadFloat(File)
a2#=ReadFloat(File)
a3#=ReadFloat(File)
a4#=ReadFloat(File)
a5#=ReadFloat(File)
a6#=ReadFloat(File)
a7#=ReadFloat(File)
a8#=ReadFloat(File)
a9#=ReadFloat(File)
a10#=ReadFloat(File)
a11#=ReadFloat(File)
a12#=ReadFloat(File)
a13#=ReadFloat(File)
a14#=ReadFloat(File)
a15#=ReadFloat(File)
a16#=ReadFloat(File)
a17#=ReadFloat(File)
a18#=ReadFloat(File)
ScaleEntity c\ent,0.01,0.01,0.01
PositionEntity c\ent,a1#,a2#,a3#
RotateEntity c\ent,a4#,a5#,a6#
ScaleEntity c\ent_k,0.01,0.01,0.01
PositionEntity c\ent_k,a7#,a8#,a9#
RotateEntity c\ent_k,a10#,a11#,a12#
ScaleEntity c\ent_d,0.01,0.01,0.01
PositionEntity c\ent_d,a13#,a14#,a15#
RotateEntity c\ent_d,a16#,a17#,a18#
EntityPickMode c\ent,2
Case 2
co.Di=New Di
co\ent=CopyMesh(Di)
X2#=ReadFloat(file)
Y2#=ReadFloat(file)
Z2#=ReadFloat(file)
P2#=ReadFloat(file)
YA2#=ReadFloat(file)
R2#=ReadFloat(file)
SX2#=ReadFloat(file)
SY2#=ReadFloat(file)
SZ2#=ReadFloat(file)
co\pick#=ReadFloat(file)
PositionEntity co\ent,X2#,Y2#,Z2#
ScaleEntity co\ent,0.005,0.005,0.005
RotateEntity co\ent,P2#,YA2#,R2#
End Select
Wend
CloseFile(file)
End Function
|