Skip to content

Commit

Permalink
Fix issue in script 'Mercury Triple Sunrise and Sunset' + small impro…
Browse files Browse the repository at this point in the history
…vements
  • Loading branch information
alex-w committed Mar 26, 2019
1 parent 2dd1456 commit a3f7e11
Show file tree
Hide file tree
Showing 2 changed files with 55 additions and 55 deletions.
1 change: 1 addition & 0 deletions po/stellarium-scripts/POTFILES.in
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,5 @@ scripts/supernova.ssc
scripts/h400_tour.ssc
scripts/largest_known_stars.ssc
scripts/constellations_tour.ssc
scripts/triple_sunrise_and_sunsets.ssc
scripts/western_constellations_tour.ssc
109 changes: 54 additions & 55 deletions scripts/triple_sunrise_and_sunsets.ssc
Original file line number Diff line number Diff line change
@@ -1,20 +1,26 @@
//
// Author: Qam1
// Name: Mercury Triple Sunrise and Sunset
// Version: 2.0
// Version: 2.1
// License: Public Domain
// Description: Due to the quirks in Mercury's orbit and rotation at certain spots the sun will rise & set 3 different times in one Mercury day.
//

include("i18n.inc");

var r = 1
var long = 90;
var ds = 2455361;

core.setObserverLocation(90.0, -0.00, 1, 1, "", "Mercury");
core.setObserverLocation(90.0, 0.00, 1, 1, "", "Mercury");

var locTxt = LabelMgr.labelScreen(tr("Location: Mercury, 0N, 90E"), 10, 10, false, 15, "#F9E397");
LabelMgr.setLabelShow(locTxt, true);

LandscapeMgr.setFlagAtmosphere(false);
LandscapeMgr.setFlagFog(false);
LandscapeMgr.setCurrentLandscapeID("ocean");
core.setGuiVisible(false);

var y = core.getScreenHeight()/768;
var x = core.getScreenWidth()/1024;
Expand All @@ -23,8 +29,7 @@ core.selectObjectByName("Sun", pointer = true);
StelMovementMgr.setFlagTracking(true);
StelMovementMgr.zoomTo(50, 1);

var d = 0

var d = 0;
while (r == 1)
{
d = d + 1;
Expand All @@ -43,15 +48,13 @@ while (r == 1)

core.setJDay(ds);



var txt1 = LabelMgr.labelScreen("Just Before Sunrise.....", 620*x, 10, false, 20, "#F9E397");
var txt1 = LabelMgr.labelScreen(tr("Just Before Sunrise....."), 620*x, 10, false, 20, "#F9E397");
LabelMgr.setLabelShow(txt1, true);

txt1 = LabelMgr.labelScreen("Surface of Mercury", 640*x, 35, false, 20, "#F9E397");
txt1 = LabelMgr.labelScreen(tr("Surface of Mercury"), 640*x, 35, false, 20, "#F9E397");
LabelMgr.setLabelShow(txt1, true);

txt1 = LabelMgr.labelScreen("Day", 660*x, 60, false, 20, "#F0F0F0");
txt1 = LabelMgr.labelScreen(tr("Day"), 660*x, 60, false, 20, "#F0F0F0");
LabelMgr.setLabelShow(txt1, true);

txt1 = LabelMgr.labelScreen(d, 720*x, 60, false, 20, "#F0F0F0");
Expand All @@ -60,35 +63,33 @@ while (r == 1)
core.setTimeRate(0);
core.wait(1);

var SunData = core.getObjectPosition("Sun");
var SunData = core.getObjectInfo("Sun");
var SunAlt = SunData["altitude"];
core.setTimeRate(0);

while (SunAlt > -2)
{
core.setDate("-1 days");
SunData = core.getObjectPosition("Sun");
core.setDate("-1 day");
SunData = core.getObjectInfo("Sun");
SunAlt = SunData["altitude"];
core.wait(0.01);
}

npcc = 0
npcc = 0;

var ctr = core.getTimeRate();
core.setTimeRate(30000);
while (SunAlt < 0)
{
core.wait(0.01);
SunData = core.getObjectPosition("Sun");
SunData = core.getObjectInfo("Sun");
SunAlt = SunData["altitude"];
core.setTimeRate(30000);



}
core.setTimeRate(ctr);

StelMovementMgr.zoomTo(10, 1);
LabelMgr.deleteAllLabels();

txt1 = LabelMgr.labelScreen("Sunrise #1", 600*x, 10, false, 20, "#F9E397");
txt1 = LabelMgr.labelScreen(tr("Sunrise #1"), 600*x, 10, false, 20, "#F9E397");
LabelMgr.setLabelShow(txt1, true);

core.setTimeRate(0);
Expand All @@ -103,7 +104,7 @@ while (r == 1)
while (lt == 0)
{
core.wait(0.01);
SunData = core.getObjectPosition("Sun");
SunData = core.getObjectInfo("Sun");
SunAlt = SunData["altitude"];

if (SunAlt < ls)
Expand All @@ -116,7 +117,7 @@ while (r == 1)
core.setTimeRate(30000);
LabelMgr.deleteAllLabels();

txt1 = LabelMgr.labelScreen("Retro", 600*x, 10, false, 15, "#F9E397");
txt1 = LabelMgr.labelScreen(tr("Retro"), 600*x, 10, false, 15, "#F9E397");
LabelMgr.setLabelShow(txt1, true);

lt = 0;
Expand All @@ -125,7 +126,7 @@ while (r == 1)
while (lt == 0)
{
core.wait(0.01);
SunData = core.getObjectPosition("Sun");
SunData = core.getObjectInfo("Sun");
SunAlt = SunData["altitude"];

if (ls < SunAlt)
Expand All @@ -137,37 +138,39 @@ while (r == 1)

LabelMgr.deleteAllLabels();

txt1 = LabelMgr.labelScreen("Sunset #1", 600*x, 10, false, 20, "#F9E397");
txt1 = LabelMgr.labelScreen(tr("Sunset #1"), 600*x, 10, false, 20, "#F9E397");
LabelMgr.setLabelShow(txt1, true);

core.setTimeRate(10);
core.wait(5);
core.setTimeRate(30000);
LabelMgr.deleteAllLabels();

var ctr = core.getTimeRate();
core.setTimeRate(30000);
while (SunAlt < 0)
{
core.wait(0.01);
SunData = core.getObjectPosition("Sun");
SunData = core.getObjectInfo("Sun");
SunAlt = SunData["altitude"];
core.setTimeRate(30000);
}
core.setTimeRate(ctr);

txt1 = LabelMgr.labelScreen("Sunrise #2", 600*x, 10, false, 20, "#F9E397");
txt1 = LabelMgr.labelScreen(tr("Sunrise #2"), 600*x, 10, false, 20, "#F9E397");
LabelMgr.setLabelShow(txt1, true);

core.setTimeRate(30000);

while (SunAlt < 5)
{
core.wait(0.01);
SunData = core.getObjectPosition("Sun");
SunData = core.getObjectInfo("Sun");
SunAlt = SunData["altitude"];
}

LabelMgr.deleteAllLabels();

txt1 = LabelMgr.labelScreen("Later in the afternoon", 600*x, 10, false, 20, "#F9E397");
txt1 = LabelMgr.labelScreen(tr("Later in the afternoon"), 600*x, 10, false, 20, "#F9E397");
LabelMgr.setLabelShow(txt1, true);

StelMovementMgr.zoomTo(120, 1);
Expand All @@ -176,9 +179,9 @@ while (r == 1)
while (SunAlt > 5)
{
core.wait(0.1);
SunData = core.getObjectPosition("Sun");
SunData = core.getObjectInfo("Sun");
SunAlt = SunData["altitude"];
core.setDate("+1 days");
core.setDate("+1 day");
}

if (SunAlt < 2)
Expand All @@ -188,61 +191,57 @@ while (r == 1)

StelMovementMgr.zoomTo(10, 1);


while (SunAlt > 0)
ctr = core.getTimeRate();
core.setTimeRate(20000);
while (SunAlt > 0)
{
core.wait(0.1);
SunData = core.getObjectPosition("Sun");
SunData = core.getObjectInfo("Sun");
SunAlt = SunData["altitude"] - 0.5;
core.setTimeRate(20000);

}



LabelMgr.deleteAllLabels();
core.setTimeRate(ctr);
LabelMgr.deleteAllLabels();

txt1 = LabelMgr.labelScreen("Sunset #2", 600*x, 10, false, 20, "#F9E397");
txt1 = LabelMgr.labelScreen(tr("Sunset #2"), 600*x, 10, false, 20, "#F9E397");
LabelMgr.setLabelShow(txt1, true);

core.setTimeRate(10);
core.wait(5);
core.setTimeRate(20000);
LabelMgr.deleteAllLabels();

npcc = 0
npcc = 0;

ctr = core.getTimeRate();
core.setTimeRate(20000);
while (SunAlt <0.5 )
{
core.wait(0.1);
SunData = core.getObjectPosition("Sun");
SunData = core.getObjectInfo("Sun");
SunAlt = SunData["altitude"];
core.setTimeRate(20000);




}
core.setTimeRate(ctr);

txt1 = LabelMgr.labelScreen("Sunrise #3", 600*x, 10, false, 20, "#F9E397");
txt1 = LabelMgr.labelScreen(tr("Sunrise #3"), 600*x, 10, false, 20, "#F9E397");
LabelMgr.setLabelShow(txt1, true);

core.setTimeRate(10);
core.wait(5);
core.setTimeRate(20000);
LabelMgr.deleteAllLabels();

ctr = core.getTimeRate();
core.setTimeRate(30000);
while (SunAlt > -0.2)

{

core.wait(0.1);
SunData = core.getObjectPosition("Sun");
SunData = core.getObjectInfo("Sun");
SunAlt = SunData["altitude"];
core.setTimeRate(30000);
}
core.setTimeRate(ctr);

txt1 = LabelMgr.labelScreen("Sunset #3", 600*x, 10, false, 20, "#F9E397");
txt1 = LabelMgr.labelScreen(tr("Sunset #3"), 600*x, 10, false, 20, "#F9E397");
LabelMgr.setLabelShow(txt1, true);

core.setTimeRate(10);
Expand All @@ -254,7 +253,7 @@ LabelMgr.deleteAllLabels();

for(c=1; c<66; c++)
{
core.setDate("+1 days");
core.setDate("+1 day");
core.wait(0.1);
}

Expand All @@ -268,5 +267,5 @@ LabelMgr.deleteAllLabels();
}
}

core.setGuiVisible(true);
core.goHome();

0 comments on commit a3f7e11

Please sign in to comment.