Good post! How did you structure your design document, if you don't mind sharing? Describing mechanics, setting, story, characters, and puzzles sounds like a lot to organize, so I'm curious how you went about that.
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Show posts MenuString value = String.Format("%s", otherString.Chars[i]);
Quote from: abstauber on Thu 08/05/2025 07:39:56* Save the levelSo when you save the level and load the level, where is the data being saved, and how is it being loaded?
* Close the game
* Create a room and tell it to load the level, you just created
//place this function in global script, then call it in on_key_press, or when clicking a GUI button, etc., whatever you prefer
function take_fullroom_screenshot()
{
PauseGame();
//saves original camera coordinates and checks if camera was tracking player character
int oldCameraX = Game.Camera.X;
int oldCameraY = Game.Camera.Y;
bool WasAutoTrackingOn;
if(Game.Camera.AutoTracking == true){
WasAutoTrackingOn = true;
}
else{
WasAutoTrackingOn = false;
}
//if you want to hide GUIs and the mouse cursor, feel free to do so here.
//or you can also specify the render layer in the parameters of every DynamicSprite.CreateFromScreenShot() instance.
//creates dynamic sprite, pans camera around room, takes screenshots of each part of room,
//splices them onto dynamic sprite, and saves sprite to file
DynamicSprite* BigScreenShot = DynamicSprite.Create(Room.Width, Room.Height);
DrawingSurface* DrawOntoBig = BigScreenShot.GetDrawingSurface();
DynamicSprite* PartialScreenShot;
for (int y = 0; y < Room.Height; y += Game.Camera.Height)
{
for (int x = 0; x < Room.Width; x += Game.Camera.Width)
{
Game.Camera.SetAt(x, y);
Wait(1);
PartialScreenShot = DynamicSprite.CreateFromScreenShot();
DrawOntoBig.DrawImage(Game.Camera.X, Game.Camera.Y, PartialScreenShot.Graphic);
}
}
DrawOntoBig.Release();
BigScreenShot.SaveToFile("$SAVEGAMEDIR$/BigScreenShot.pcx");
//removes dynamic sprite, returns camera to original coordinates, and reactivates auto-tracking if it was on
BigScreenShot.Delete();
PartialScreenShot.Delete();
Game.Camera.SetAt(oldCameraX, oldCameraY);
if(WasAutoTrackingOn == true){
Game.Camera.AutoTracking = true;
}
//if you manually hid GUIs and the cursor, re-enable them here!
UnPauseGame();
}
object[ID number here].Visible = false
By continuing to use this site you agree to the use of cookies. Please visit this page to see exactly how we use these.
Page created in 0.033 seconds with 14 queries.