diff --git a/gd_spritestudio/gd_node_ssplayer.cpp b/gd_spritestudio/gd_node_ssplayer.cpp index df68f46..2548170 100644 --- a/gd_spritestudio/gd_node_ssplayer.cpp +++ b/gd_spritestudio/gd_node_ssplayer.cpp @@ -101,7 +101,7 @@ void GdNodeSsPlayer::setPlayerResource( const Ref& resPlayer { m_ResPlayer = resPlayer; - m_strAnimationSelected.resize(0); + m_strAnimationSelected = ""; fetchAnimation(); NOTIFY_PROPERTY_LIST_CHANGED(); @@ -132,7 +132,7 @@ void GdNodeSsPlayer::setAnimePack( const String& strName ) postAnimePackChanged( m_strAnimePackSelected ); - m_strAnimationSelected.resize(0); + m_strAnimationSelected = ""; fetchAnimation(); NOTIFY_PROPERTY_LIST_CHANGED(); diff --git a/gd_spritestudio/gd_packet_ssanimepack.cpp b/gd_spritestudio/gd_packet_ssanimepack.cpp index d1ad14e..53487bc 100644 --- a/gd_spritestudio/gd_packet_ssanimepack.cpp +++ b/gd_spritestudio/gd_packet_ssanimepack.cpp @@ -21,7 +21,7 @@ bool GdPacketSsAnimePack::write( const String& strRaw ) if ( c.length() > 0 ) { libXML::XMLDocument xml; - if ( libXML::XML_SUCCESS == xml.Parse( c, c.length() ) ) { + if ( libXML::XML_SUCCESS == xml.Parse( c.get_data(), c.length() ) ) { SsXmlIArchiver ar( xml.GetDocument(), "SpriteStudioAnimePack" ); SsAnimePack animePack; diff --git a/gd_spritestudio/gd_packet_sscellmap.cpp b/gd_spritestudio/gd_packet_sscellmap.cpp index 2892283..67cc405 100644 --- a/gd_spritestudio/gd_packet_sscellmap.cpp +++ b/gd_spritestudio/gd_packet_sscellmap.cpp @@ -21,7 +21,7 @@ bool GdPacketSsCellMap::write( const String& strRaw ) if ( c.length() > 0 ) { libXML::XMLDocument xml; - if ( libXML::XML_SUCCESS == xml.Parse( c, c.length() ) ) { + if ( libXML::XML_SUCCESS == xml.Parse( c.get_data(), c.length() ) ) { SsXmlIArchiver ar( xml.GetDocument(), "SpriteStudioCellMap" ); SsCellMap cellMap; diff --git a/gd_spritestudio/gd_packet_sseffect.cpp b/gd_spritestudio/gd_packet_sseffect.cpp index f976366..f24c633 100644 --- a/gd_spritestudio/gd_packet_sseffect.cpp +++ b/gd_spritestudio/gd_packet_sseffect.cpp @@ -21,7 +21,7 @@ bool GdPacketSsEffect::write( const String& strRaw ) if ( c.length() > 0 ) { libXML::XMLDocument xml; - if ( libXML::XML_SUCCESS == xml.Parse( c, c.length() ) ) { + if ( libXML::XML_SUCCESS == xml.Parse( c.get_data(), c.length() ) ) { SsXmlIArchiver ar( xml.GetDocument(), "SpriteStudioEffect" ); SsEffectFile effect; diff --git a/gd_spritestudio/gd_packet_ssproject.cpp b/gd_spritestudio/gd_packet_ssproject.cpp index 2de6ee5..4fb93fa 100644 --- a/gd_spritestudio/gd_packet_ssproject.cpp +++ b/gd_spritestudio/gd_packet_ssproject.cpp @@ -21,7 +21,7 @@ bool GdPacketSsProject::write( const String& strRaw ) if ( c.length() > 0 ) { libXML::XMLDocument xml; - if ( libXML::XML_SUCCESS == xml.Parse( c, c.length() ) ) { + if ( libXML::XML_SUCCESS == xml.Parse( c.get_data(), c.length() ) ) { SsXmlIArchiver ar( xml.GetDocument(), "SpriteStudioProject" ); SsProject project; diff --git a/gd_spritestudio/gd_resource_ssdocument.cpp b/gd_spritestudio/gd_resource_ssdocument.cpp index 21a5a7d..e55b39f 100644 --- a/gd_spritestudio/gd_resource_ssdocument.cpp +++ b/gd_spritestudio/gd_resource_ssdocument.cpp @@ -8,7 +8,7 @@ GdResourceSsDocument::GdResourceSsDocument() { - m_strSource.resize(0); + m_strSource = ""; } GdResourceSsDocument::~GdResourceSsDocument() diff --git a/gd_spritestudio/gd_resource_ssproject.cpp b/gd_spritestudio/gd_resource_ssproject.cpp index f0b39b6..4159d44 100644 --- a/gd_spritestudio/gd_resource_ssproject.cpp +++ b/gd_spritestudio/gd_resource_ssproject.cpp @@ -15,9 +15,7 @@ GdResourceSsProject::GdResourceSsProject() m_pProject = NULL; m_strRoot = ""; - for ( int i = 0; i < m_mapResAnimePack.size(); i++ ) { - m_mapResAnimePack.erase( m_mapResAnimePack.getk( i ) ); - } + m_mapResAnimePack.clear(); m_vecResCellMap.clear(); m_vecResEffect.clear(); } @@ -29,9 +27,7 @@ GdResourceSsProject::~GdResourceSsProject() m_pProject = NULL; } - for ( int i = 0; i < m_mapResAnimePack.size(); i++ ) { - m_mapResAnimePack.erase( m_mapResAnimePack.getk( i ) ); - } + m_mapResAnimePack.clear(); m_vecResCellMap.clear(); m_vecResEffect.clear(); } diff --git a/gd_spritestudio/gd_resource_ssproject.h b/gd_spritestudio/gd_resource_ssproject.h index 8f65ada..477e9c4 100644 --- a/gd_spritestudio/gd_resource_ssproject.h +++ b/gd_spritestudio/gd_resource_ssproject.h @@ -10,13 +10,13 @@ #ifdef SPRITESTUDIO_GODOT_EXTENSION #include #include -#include +#include using namespace godot; #else #ifdef GD_V4 #include "core/io/resource.h" #include "core/io/resource_loader.h" -#include "core/templates/vmap.h" +#include "core/templates/hash_map.h" #endif #ifdef GD_V3 #include "core/resource.h" @@ -86,7 +86,7 @@ private : String m_strImage; String m_strEffect; - VMap> m_mapResAnimePack; + HashMap> m_mapResAnimePack; Vector> m_vecResCellMap; Vector> m_vecResEffect; }; diff --git a/gd_spritestudio/ss_container.cpp b/gd_spritestudio/ss_container.cpp index 85d2223..658d972 100644 --- a/gd_spritestudio/ss_container.cpp +++ b/gd_spritestudio/ss_container.cpp @@ -86,7 +86,7 @@ SsProject* SsContainer::loadProjectFromFile( const String& strPath, bool bAutoDe auto c = strXml.utf8(); if ( c.length() > 0 ) { - pProject = ssloader_sspj::Parse_ProjectOnly( c, c.length() ); + pProject = ssloader_sspj::Parse_ProjectOnly( c.get_data(), c.length() ); } }else if ( strExt == "gdsspj" ) { @@ -131,7 +131,7 @@ SsAnimePack* SsContainer::loadAnimePackFromFile( const String& strPath, bool bAu auto c = strXml.utf8(); if ( c.length() > 0 ) { - pAnimePack = ssloader_ssae::Parse( c, c.length() ); + pAnimePack = ssloader_ssae::Parse( c.get_data(), c.length() ); } }else if ( strExt == "gdssae" ) { @@ -176,7 +176,7 @@ SsCellMap* SsContainer::loadCellMapFromFile( const String& strPath, bool bAutoDe auto c = strXml.utf8(); if ( c.length() > 0 ) { - pCellMap = ssloader_ssce::Parse( c, c.length() ); + pCellMap = ssloader_ssce::Parse( c.get_data(), c.length() ); } }else if ( strExt == "gdssce" ) { @@ -220,12 +220,12 @@ SsEffectFile* SsContainer::loadEffectFromFile( const String& strPath, bool bAuto String strXml = GdIO::loadStringFromFile( strPath ); auto c = strXml.utf8(); - pEffect = NULL;//ssloader_ssee::Parse( c, c.length() ); + pEffect = NULL;//ssloader_ssee::Parse( c.get_data(), c.length() ); if ( c.length() > 0 ) { libXML::XMLDocument xml; - libXML::XMLError xmlerr = xml.Parse(c, c.length()); + libXML::XMLError xmlerr = xml.Parse(c.get_data(), c.length()); if ( libXML::XML_SUCCESS == xmlerr) { diff --git a/gd_spritestudio/ss_io.cpp b/gd_spritestudio/ss_io.cpp index cf6a8d6..dd4ea7c 100644 --- a/gd_spritestudio/ss_io.cpp +++ b/gd_spritestudio/ss_io.cpp @@ -2095,7 +2095,7 @@ bool SsIO::pull( StreamPeerBuffer& st, SsEffectBehavior& behavior ) bool SsIO::pull( StreamPeerBuffer& st, SsString& str ) { - str = st.get_utf8_string().utf8(); + str = st.get_utf8_string().utf8().get_data(); return true; } diff --git a/gd_spritestudio/ss_renderer_impl.cpp b/gd_spritestudio/ss_renderer_impl.cpp index 1cb7d76..2f39739 100644 --- a/gd_spritestudio/ss_renderer_impl.cpp +++ b/gd_spritestudio/ss_renderer_impl.cpp @@ -1618,7 +1618,7 @@ void SsRendererImpl::makePrimitive( SsPartState* state ) // glTranslatef( uvw + uv_trans.x , uvh + uv_trans.y , 0 ); // glRotatef( state->uvRotation, 0.0, 0.0, 1.0); TranslationMatrix( transMat, uvw + uv_trans.x, uvh + uv_trans.y, 0 ); - Matrix4RotationZ( rotateMat, state->uvRotation * Math_PI / 180.0 ); + Matrix4RotationZ( rotateMat, state->uvRotation * 3.1415926535897932384626433833 / 180.0 ); float uvsh = state->uvScale.x; float uvsv = state->uvScale.y;