扫描二维码关注官方公众号
返回列表
+ 发新帖
查看: 91|回复: 0

[转载发布] 实时更新的时间系统

[复制链接]
累计送礼:
0 个
累计收礼:
0 个
  • TA的每日心情
    开心
    2024-11-27 10:08
  • 签到天数: 108 天

    连续签到: 4 天

    [LV.6]常住居民II

    2219

    主题

    376

    回帖

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    6
    卡币
    9661
    OK点
    16
    推广点
    0
    同能卷
    0
    积分
    12284

    灌水之王

    发表于 2024-11-21 21:50:53 | 显示全部楼层 |阅读模式
    作为一个js的小白,今天在瓢虫和当当的帮助下写了这个插件,算是学习js的第一步吧!
    写好了拿出来跟大家分享一下,看有没有同样需要使用的小伙伴,也希望有大神多指导指导我!
    脚本一开始是参照 @余烬之中 的教学贴写的窗口,后来在瓢虫和当当的帮助下,添加了变量调用和实时更新,在这里再次万分感谢!
    顺便勾搭一下,有没有志同道合想一起做游戏的小伙伴?QQ330572745!

    使用效果图:


    脚本:
    JAVASCRIPT 代码
    1. Scene_Map.prototype.start = function(){
    2.     Scene_MenuBase.prototype.start.call(this);
    3.     SceneManager.clearStack();
    4.     if(this._transfer){
    5.         this.fadeInForTransfer();
    6.         this._mapNameWindow.open();
    7.         this._ningjingWindow.open();
    8.         $gameMap.autoplay();
    9.     }elseif(this.needsFadeIn()){
    10.         this.startFadeIn(this.fadeSpeed(), false);
    11.     }
    12.     this.menuCalling = false;
    13. };
    14. Scene_Map.prototype.stop = function(){
    15.     Scene_MenuBase.prototype.stop.call(this);
    16.     $gamePlayer.straighten();
    17.     this._mapNameWindow.close();
    18.     this._ningjingWindow.close();
    19.     if(this.needsSlowFadeOut()){
    20.         this.startFadeOut(this.slowFadeSpeed(), false);
    21.     }elseif(SceneManager.isNextScene(Scene_Map)){
    22.         this.fadeOutForTransfer();
    23.     }elseif(SceneManager.isNextScene(Scene_Battle)){
    24.         this.launchBattle();
    25.     }
    26. };
    27. Scene_Map.prototype.terminate = function(){
    28.     Scene_MenuBase.prototype.terminate.call(this);
    29.     if(!SceneManager.isNextScene(Scene_Battle)){
    30.         this._spriteset.update();
    31.         this._mapNameWindow.hide();
    32.         this._ningjingWindow.hide();
    33.         SceneManager.snapForBackground();
    34.     }
    35.     $gameScreen.clearZoom();
    36. };
    37. Scene_Map.prototype.createDisplayObjects = function(){
    38.     this.createSpriteset();
    39.     this.createMapNameWindow();
    40.     this.createNingJingWindow();
    41.     this.createWindowLayer();
    42.     this.createAllWindows();
    43. };
    44. Scene_Map.prototype.createNingJingWindow = function(){
    45.     this._ningjingWindow = new Window_Testing(550,580,260,40);
    46.     this.addChild(this._ningjingWindow);
    47. };
    48. Scene_Map.prototype.callMenu = function(){
    49.     SoundManager.playOk();
    50.     SceneManager.push(Scene_Menu);
    51.     Window_MenuCommand.initCommandPosition();
    52.     $gameTemp.clearDestination();
    53.     this._ningjingWindow.hide();
    54.     this._mapNameWindow.hide();
    55.     this._waitCount = 2;
    56. };
    57. Scene_Map.prototype.launchBattle = function(){
    58.     BattleManager.saveBgmAndBgs();
    59.     this.stopAudioOnBattleStart();
    60.     SoundManager.playBattleStart();
    61.     this.startEncounterEffect();
    62.     this._ningjingWindow.hide();
    63.     this._mapNameWindow.hide();
    64. };
    65. function Window_Testing(){
    66.     this.initialize.apply(this, arguments);
    67. }
    68. Window_Testing.prototype = Object.create(Window_Base.prototype);
    69. Window_Testing.prototype.initialize = function(x, y, width, height){
    70.     Window_Base.prototype.initialize.call(this, x, y, width, height);
    71.     this.contents.fontSize = 20;
    72. }
    73. Window_Testing.prototype.standardPadding = function(){
    74.     return8;
    75. };
    76. Window_Testing.prototype.update = function(){
    77.     Window_Base.prototype.update.call(this);
    78.         if($gameVariables.value(1)==0){
    79.                 $gameVariables._data[1]=1
    80.                 $gameVariables._data[2]=1
    81.                 $gameVariables._data[3]=1
    82.                 $gameVariables._data[4]=1
    83.         }elseif($gameVariables.value(5)>=4){
    84.                 $gameVariables._data[5]-=4
    85.                 $gameVariables._data[4]+=1
    86.         }elseif($gameVariables.value(4)>=25){
    87.                 $gameVariables._data[4]-=24
    88.                 $gameVariables._data[3]+=1
    89.         }elseif($gameVariables.value(3)>=31){
    90.                 $gameVariables._data[3]-=30
    91.                 $gameVariables._data[2]+=1
    92.         }elseif($gameVariables.value(2)>=13){
    93.                 $gameVariables._data[2]-=12
    94.                 $gameVariables._data[1]+=1
    95.         }
    96.     var textW = 270;
    97.     var textH = 0;
    98.     this.contents.clear();
    99.     this.drawText($gameVariables.value(1) + "年", -180, -6, textW, 'right');
    100.     textH += this.lineHeight();
    101.     this.drawText($gameVariables.value(2) + "月", -130, -6, textW, 'right');
    102.     textH += this.lineHeight();
    103.     this.drawText($gameVariables.value(3) + "日", -80, -6, textW, 'right');
    104.     textH += this.lineHeight();
    105.     this.drawText($gameVariables.value(4) + "时", -30, -6, textW, 'right');
    106.     textH += this.lineHeight();
    107. };
    复制代码

                本帖来自P1论坛作者宁静,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=393843  若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    天天去同能,天天有童年!
    回复 送礼论坛版权

    使用道具 举报

    文明发言,和谐互动
    文明发言,和谐互动
    高级模式
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    幸运抽奖

    社区每日抽奖来袭,快来试试你是欧皇还是非酋~

    立即查看

    聊天机器人
    Loading...

    QQ|Archiver|手机版|小黑屋|同能RPG制作大师 ( 沪ICP备12027754号-3 )

    GMT+8, 2025-1-16 06:03 , Processed in 0.068638 second(s), 58 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回复 返回顶部 返回列表