Показать сообщение отдельно
Старый 22.06.2012, 23:37   #1
burovalex
Разработчик
 
Аватар для burovalex
 
Регистрация: 04.04.2012
Сообщений: 468
Написано 37 полезных сообщений
(для 60 пользователей)
Плохо Баг или мудаг?

Помогите, ребят, разобраться в топе вопроса)

Смысл такой, есть 3 фунции - HeroAction()-проверяет, 2 фунции вызываются из под неё.

Global heroLeftHandFree%,heroRightHandFree%
Global heroLeftHandEntity,heroRightHandEntity
;===================================================
Function HeroAction()
;действие игрока
If heroActionEnable=True Then 
	ObjectPicked=xCameraPick(camera,graphicsWC,graphicsHC)
	If ObjectPicked<>0 Then 
		ObjectPickedName=xEntityName(ObjectPicked)
		If xEntityDistance(ObjectPicked,camera)>heroActionDistance Then ObjectPicked=0 : objectPickedName=""
	Else 
		ObjectPicked=0 : objectPickedName=""
	EndIf
	;если пикнул объект
	If ObjectPicked<>0 Then
		If mouseHited1 Or mouseHited2 Then		
			;если трава
			If mousehited1 Then mb=1 Else mb=2
			If objectPickedName="grass" Then TakeGrass(mb)
		EndIf
	Else
	;если не пикнул объект
		If mouseHited1 Or mouseHited2 Then		
			If mousehited1 Then mb=1 Else mb=2
			DropItem(mb)
		EndIf
	EndIf
EndIf
End Function
;===================================================
Function TakeGrass(mb)
For grass.grass=Each grass
	If grass\entity=objectPicked Then 
		If mb=1 Then
			If heroLeftHandFree=False Then 
				messageCenterText="Левая рука занята" : messageCenterAlpha=700
				Else
				grid(xEntityX(grass\entity),xEntityZ(grass\entity),1)=0 
				heroLeftHandEntity=xCopyEntity(grass\entity) : xHideEntity(heroLeftHandEntity) 
				heroLeftHandFree=False
				leftHandItemTex=grassItemTex
				xFreeEntity grass\entity :	Delete grass.grass
			EndIf
		EndIf	
	EndIf
Next
End Function
;===================================================
Function DropItem(mb)
If mb=1 And heroLeftHandEntity<>0 Then 
	xPositionEntity heroLeftHandEntity,xEntityX(camera,1)+Sin(xEntityYaw(camera)),xEntityY(camera,1),xEntityZ(camera,1)+Cos(xEntityYaw(camera))
	xShowEntity heroLeftHandEntity
	ResourceCreate(heroLeftHandEntity,resourceClassGrass)
	heroLeftHandFree=True
	leftHandItemTex=0
xFreeEntity heroLeftHandEntity
EndIf
End Function
;===================================================
Не пойму почему этот вариант не работает. Ошбка вознивает в фукции ItemDrop() иногда сразу иногда нет

И проблема больше из-за того что я конкретно ошибку не вижу. Выдает такую фигню. Помогите плиз, может debugger какойто нормальный есть?
Миниатюры
Нажмите на изображение для увеличения
Название: err.png
Просмотров: 846
Размер:	151.4 Кб
ID:	17084  
__________________
(Offline)
 
Ответить с цитированием