Sfoglia il codice sorgente

Fixed NumberProps and StringProps not returning values correctly. Fixed sprites crashing when framewidth is larger than the sprite size.

Ivan Safrin 12 anni fa
parent
commit
f824d56748

+ 12 - 0
Core/Contents/Source/PolyScreenSprite.cpp

@@ -148,7 +148,13 @@ void ScreenSprite::recalculateSpriteDimensions() {
 	
 	for(int i =0 ; i < animations.size(); i++) {
 		animations[i]->numFramesX = texture->getWidth() / spriteWidth;	
+		if(animations[i]->numFramesX < 1) {
+			animations[i]->numFramesX = 1;
+		}
 		animations[i]->numFramesY = texture->getHeight() / spriteHeight;
+		if(animations[i]->numFramesY < 1) {
+			animations[i]->numFramesY = 1;
+		}		
 		animations[i]->spriteUVWidth = spriteUVWidth;
 		animations[i]->spriteUVHeight = spriteUVHeight;	
 		animations[i]->setOffsetsFromFrameString(animations[i]->frames);
@@ -211,7 +217,13 @@ SpriteAnimation *ScreenSprite::addAnimation(const String& name, const String& fr
 	
 	
 	newAnimation->numFramesX = texture->getWidth() / spriteWidth;	
+	if(newAnimation->numFramesX < 1) {
+		newAnimation->numFramesX = 1;
+	}
 	newAnimation->numFramesY = texture->getHeight() / spriteHeight;
+	if(newAnimation->numFramesY < 1) {
+		newAnimation->numFramesY = 1;
+	}	
 	newAnimation->spriteUVWidth = spriteUVWidth;
 	newAnimation->spriteUVHeight = spriteUVHeight;
 	

+ 2 - 2
IDE/Contents/Source/PolycodeProps.cpp

@@ -485,7 +485,7 @@ void StringProp::setPropData(PolycodeEditorPropActionData* data) {
 
 void StringProp::set(String str) {
 	suppressChangeEvent = true;
-	stringEntry->setText(str, false);
+	stringEntry->setText(str);
 	suppressChangeEvent = false;	
 }
 
@@ -587,7 +587,7 @@ void NumberProp::handleEvent(Event *event) {
 
 void NumberProp::set(Number number) {
 	suppressChangeEvent = true;
-	numberEntry->setText(String::NumberToString(number), false);
+	numberEntry->setText(String::NumberToString(number));
 	suppressChangeEvent = false;	
 }