From a40cc6af619fadb2cc82ca9e61bf054efb3ebf9c Mon Sep 17 00:00:00 2001 From: otya128 Date: Thu, 15 Dec 2016 17:32:41 +0900 Subject: [PATCH] Fix SPOFS --- SMILEBASIC/builtinfunctions.d | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/SMILEBASIC/builtinfunctions.d b/SMILEBASIC/builtinfunctions.d index da28863..46420de 100644 --- a/SMILEBASIC/builtinfunctions.d +++ b/SMILEBASIC/builtinfunctions.d @@ -1353,15 +1353,23 @@ class BuiltinFunction { p.sprite.spshow(id); } - static void SPOFS(PetitComputer p, int id, double x, double y, DefaultValue!(int, false) z) + static void SPOFS(PetitComputer p, int id, DefaultValue!double x, DefaultValue!double y, DefaultValue!(int, false) z) { + if (x.isDefault || y.isDefault) + { + double x_, y_; + int z_; + p.sprite.getspofs(id, x_, y_, z_); + x.setDefaultValue(x_); + y.setDefaultValue(y_); + } if(z.isDefault) { - p.sprite.spofs(id, x, y); + p.sprite.spofs(id, cast(int)x, cast(int)y); } else { - p.sprite.spofs(id, x, y, cast(int)z); + p.sprite.spofs(id, cast(int)x, cast(int)y, cast(int)z); } } @StartOptional("z")