aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Framework')
-rw-r--r--OpenSim/Framework/Data.MySQL/MySQLDataStore.cs41
1 files changed, 27 insertions, 14 deletions
diff --git a/OpenSim/Framework/Data.MySQL/MySQLDataStore.cs b/OpenSim/Framework/Data.MySQL/MySQLDataStore.cs
index 06a5814..c48c88f 100644
--- a/OpenSim/Framework/Data.MySQL/MySQLDataStore.cs
+++ b/OpenSim/Framework/Data.MySQL/MySQLDataStore.cs
@@ -702,12 +702,12 @@ namespace OpenSim.Framework.Data.MySQL
702 { 702 {
703 prim.SetSitTargetLL(new LLVector3( 703 prim.SetSitTargetLL(new LLVector3(
704 Convert.ToSingle(row["SitTargetOffsetX"]), 704 Convert.ToSingle(row["SitTargetOffsetX"]),
705 Convert.ToSingle(row["SitTargetOffsetX"]), 705 Convert.ToSingle(row["SitTargetOffsetY"]),
706 Convert.ToSingle(row["SitTargetOffsetZ"])), new LLQuaternion( 706 Convert.ToSingle(row["SitTargetOffsetZ"])), new LLQuaternion(
707 Convert.ToSingle(row["SitTargetOrientW"]),
708 Convert.ToSingle(row["SitTargetOrientX"]), 707 Convert.ToSingle(row["SitTargetOrientX"]),
709 Convert.ToSingle(row["SitTargetOrientY"]), 708 Convert.ToSingle(row["SitTargetOrientY"]),
710 Convert.ToSingle(row["SitTargetOrientX"]))); 709 Convert.ToSingle(row["SitTargetOrientZ"]),
710 Convert.ToSingle(row["SitTargetOrientW"])));
711 } 711 }
712 catch (System.InvalidCastException) 712 catch (System.InvalidCastException)
713 { 713 {
@@ -828,17 +828,30 @@ namespace OpenSim.Framework.Data.MySQL
828 row["RotationZ"] = prim.RotationOffset.Z; 828 row["RotationZ"] = prim.RotationOffset.Z;
829 row["RotationW"] = prim.RotationOffset.W; 829 row["RotationW"] = prim.RotationOffset.W;
830 830
831 // Sit target 831 try
832 LLVector3 sitTargetPos = prim.GetSitTargetPositionLL(); 832 {
833 row["SitTargetOffsetX"] = sitTargetPos.X; 833 // Sit target
834 row["SitTargetOffsetY"] = sitTargetPos.Y; 834 LLVector3 sitTargetPos = prim.GetSitTargetPositionLL();
835 row["SitTargetOffsetZ"] = sitTargetPos.Z; 835 row["SitTargetOffsetX"] = sitTargetPos.X;
836 836 row["SitTargetOffsetY"] = sitTargetPos.Y;
837 LLQuaternion sitTargetOrient = prim.GetSitTargetOrientationLL(); 837 row["SitTargetOffsetZ"] = sitTargetPos.Z;
838 row["SitTargetOrientW"] = sitTargetOrient.W; 838
839 row["SitTargetOrientX"] = sitTargetOrient.X; 839 LLQuaternion sitTargetOrient = prim.GetSitTargetOrientationLL();
840 row["SitTargetOrientY"] = sitTargetOrient.Y; 840 row["SitTargetOrientW"] = sitTargetOrient.W;
841 row["SitTargetOrientZ"] = sitTargetOrient.Z; 841 row["SitTargetOrientX"] = sitTargetOrient.X;
842 row["SitTargetOrientY"] = sitTargetOrient.Y;
843 row["SitTargetOrientZ"] = sitTargetOrient.Z;
844 }
845 catch (MySql.Data.MySqlClient.MySqlException)
846 {
847 // Database table was created before we got here and needs to be created! :P
848
849 using (MySqlCommand cmd = new MySqlCommand("ALTER TABLE `prims` ADD COLUMN `SitTargetOffsetX` float NOT NULL default 0, ADD COLUMN `SitTargetOffsetY` float NOT NULL default 0, ADD COLUMN `SitTargetOffsetZ` float NOT NULL default 0, ADD COLUMN `SitTargetOrientW` float NOT NULL default 0, ADD COLUMN `SitTargetOrientX` float NOT NULL default 0, ADD COLUMN `SitTargetOrientY` float NOT NULL default 0, ADD COLUMN `SitTargetOrientZ` float NOT NULL default 0;", m_connection))
850 {
851 cmd.ExecuteNonQuery();
852 }
853 }
854
842 855
843 } 856 }
844 857