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

[转载发布] RMXP SDK(震撼登场)

[复制链接]
累计送礼:
0 个
累计收礼:
0 个
  • TA的每日心情
    开心
    昨天 18:01
  • 签到天数: 114 天

    连续签到: 4 天

    [LV.6]常住居民II

    2338

    主题

    403

    回帖

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    6
    卡币
    10622
    OK点
    16
    推广点
    0
    同能卷
    0
    积分
    13391

    灌水之王

    发表于 2024-4-19 15:32:27 | 显示全部楼层 |阅读模式
    下载地址:
    http://rpg.blue/web/dlFTP/up/技术区/RMXP SDK 1.2.txt

    http://rpg.blue/web/dlFTP/up/技术区/RMXP SDK 1.3.txt
    #==============================================================================
    # ** RMXP Standard Development Kit (SDK)
    #------------------------------------------------------------------------------
    # Build Date - 2005-11-22
    # Version 1.0 - Near Fantastica - 2005-11-22
    # Version 1.1 - SephirothSpawn - 2005-12-18 - (Near Fantastica)
    # Version 1.2 - Near Fantastica - 2005-12-18
    # Version 1.3 - Wachunga - 2005-12-19
    #------------------------------------------------------------------------------
    =begin
      1.0 - Outline

      The Standard Development Kit (SDK) aims to increase compatibility between
      RGSS scripts by:

      a) defining a set of scripting standards (see section 3)
      b) restructuring often-used default classes and methods (see section 4)
      c) providing a scripting tools module (see section 5)
    #------------------------------------------------------------------------------
      2.0 - Modifications to the RMXP Standard Development Kit

      Since edits to the SDK may cause massive capability errors, any and all
      modifications must first be approved by a member of the RMXP SDK Team.

      The author of any modifications must be sure to update all relevant
      documentation. This also includes the header, where the author is to put
      the next version number with his or her name and the name of the approval
      member (from the SDK Team) under the latest version in the following format.

      Version # - Name - Date - (Approval Member Name)
    #------------------------------------------------------------------------------
      3.0 - Coding Standards

      To be compliant with the SDK, a script must compy with the following
      coding standards:

      3.1 - Commenting
      3.2 - Classes
      3.3 - Variables
      3.4 - Aliases
      3.5 - Strings
      3.6 - Line Length
      3.7 - White Space
      3.8 - Constants
      3.9 - Parentheses
    #------------------------------------------------------------------------------
      3.1 - Commenting

      Scripts must begin with the following header:

      #==============================================================================
      # ** Script Name
      #------------------------------------------------------------------------------
      # Your Name
      # Version
      # Date
      #==============================================================================

      All classes and methods must have a comment describing the process or what
      was added. All code added to methods that can not be aliased must be
      formatted as follows:

      #------------------------------------------------------------------------------
      # Begin Script Name Edit
      #------------------------------------------------------------------------------
      [Code]  
      #------------------------------------------------------------------------------
      # End Script Name Edit
      #------------------------------------------------------------------------------

      Single line comments should precede the described block of code and should be
      indented at the same level. Code that is not self-documenting should be
      commented.
      
      However, very short comments can appear on the same line as the described
      code, but should be shifted far enough to separate them from the statements.
      If more than one short comment appears in a chunk of code, they should all be
      indented to the same tab setting. Attribute declarations should always have a
      trailing comment.
    #------------------------------------------------------------------------------
      3.2 - Classes

      All classes must be named consistently with the default code, namely:

        Data - Any class that holds data
        Game - Any class that processes data
        Sprite - Any class that defines a sprite
        Spriteset - Any class that defines multiple sprites
        Window - Any class that defines a window
        Arrow - Any class that defines an arrow
        Scene - Any class that defines a scene
    #------------------------------------------------------------------------------
      3.3 - Variables

      All variable names must be reasonably descriptive. Use of class and global
      variables should be limited. Any variable used by the default system can not
      have its use changed.
    #------------------------------------------------------------------------------
      3.4 - Aliases

      Aliasing a method is preferable to overriding it; an alias should be used
      whenever possible to increase compatibility with other scripts. All alias
      names must have the following format:

      yourname_scriptname_classname_methodname
    #------------------------------------------------------------------------------
      3.5 ?Strings

      Strings should normally be defined with single quotes ('example'); this
      decreases the processing time of the engine. Double quotes are useful when
      using the following features:
      a) substitutions, i.e. sequences that start with a backslash character
         (e.g. \n for the newline character)
      b) expression interpolation, i.e. #{ expression } is replaced by the value
         of expression
    #------------------------------------------------------------------------------
      3.6 - Line Length
      
      Lines should not cause the the viewer to have to scroll sideways to view them
      in the script editor. When the line needs to be broken, it should follow the
      following guidelines, in preferential order:
      
        Break after a comma.
        Break before an operator.
        Prefer higher-level breaks to lower-level breaks.
        Align the new line with the beginning of the expression at the same level
        on the previous line.
      
      If the above rules lead to confusing code or to code that抯 squished up
      against the right margin, just indent 4 spaces instead.
    #------------------------------------------------------------------------------
      3.7 - White Space
      
      A blank line(s) should be used in the following places:
      
        Between sections of a source file
        Between class and module definitions
        Between attributes and the class definition
        Between methods
        Between the local variables in a method and its first statement
        Before a block or single-line comment
        Between logical sections inside a method to improve readability

      Blank spaces should be used in the following places:
      
        A keyword followed by a parenthesis, e.g. if (some_boolean_statements)
        After commas in argument lists, e.g. def method (arg1, arg2, ...)
        All binary operators except '.', e.g. a + b; c = 1
    #------------------------------------------------------------------------------
      3.8 - Constants
      
      New numerical values should not be "hard-coded", except for -1, 0, and 1,
      which can appear in for loops as counter values. Instead, these numerical
      values should be made into constant variables and these used instead.
    #------------------------------------------------------------------------------
      3.9 - Parentheses
      
      It is generally a good idea to use parentheses liberally in expressions
      involving mixed operators to avoid operator precedence problems. Even if
      the operator precedence seems clear to you, it might not be to others -?you
      shouldn抰 assume that other programmers know precedence as well as you do.
    #------------------------------------------------------------------------------
      4.0 - Engine Updates

      The following is a list of classes and methods that have been updated by the
      SDK to help improve compatibility:

        Game_Map - setup
        Game_Map - update
        Game_Character - update
        Game_Event - refresh
        Game_Player - update
        Spriteset_Map - initialize
        Spriteset_Map - update
        Scene_Tile - main
        Scene_Map - main
        Scene_Map - update
        Scene_Save - write_save_data
        Scene_Load - read_save_data
        Scene_Menu - initialize   
        Scene_Menu - main
        Scene_Menu - update & command input
        Scene_Battle - main
        Scene_Battle - update
        Scene_Battle - update_phase3_basic_command
        Scene_Battle - make_basic_action_result
    #------------------------------------------------------------------------------
      5.0 - SDK Tools

      The following tools are included in the SDK to help improve the development
      process:

      5.1 - Logging Scripts
      5.2 - Enabling/Disabling Scripts
      5.3 - Script Dependencies
      5.4 - Standard Text Box Input
      5.5 - Standard Event Comment Input
    #------------------------------------------------------------------------------
      5.1 ?Logging Scripts

      All SDK-compliant scripts should be logged. This is done by calling the
      SDK.log(script, name, ver, date) method, where

      script = script name
      name = your name
      ver = version
      date = date last updated
    #------------------------------------------------------------------------------
      5.2 ?Enabling/Disabling Scripts

      When a script is logged it is also enabled. A script can be enabled and
      disabled using the following calls:

      SDK.enable('Script Name')
      SDK.disable('Script Name')

      All non-default scripts (and code added to default scripts) must be enclosed
      in an if statement that checks whether or not they have been enabled, as
      follows:
      
      #--------------------------------------------------------------------------
      # Begin SDK Enabled Check
      #--------------------------------------------------------------------------
      if SDK.state('Script Name') == true
        [Script or Code]
      end
      #--------------------------------------------------------------------------
      # End SDK Enabled Test
      #--------------------------------------------------------------------------

      Keep in mind that this if statement can not continue on to other pages and
      every page needs its own if statement testing the state of the script. As
      well every script should have its own test.
    #------------------------------------------------------------------------------
      5.3 ?Script Dependencies

      Any script that requires (i.e. has a dependency on) another script can check
      if that dependency is met provided that the required script is set up before
      the script in question. This would be done in the following way:

      p 'Script Name not found' if SDK.state('Script Name') != true
    #------------------------------------------------------------------------------
      5.4 ?Standard Text Box Input
      
      Any script that requires input from a database text field should use the
      following:
      
      SDK.text_box_input(element, index)
      
      where:
      element = an object of the text field
      index = the index in which your script call falls
       
      The text field should be formatted in the following way:
      
      "Default value | script call | script call"
    #------------------------------------------------------------------------------
      5.5 ?Standard Event Comment Input
      
      Any script that requires input from an event comment should use the
      following:
      
      SDK.event_comment_input(event, elements, trigger)
      
      where:
      event = an object of the event
      elements = the number of elements the method is to process
      trigger = the text value triggering the script to start processing
      
      or
      
      SDK.event_comment_input(page, elements, trigger)
      
      where:
      page = an object of the event.page
      elements = the number of elements the method is to process
      trigger = the text value triggering the script to start processing
      
      The method returns nil if the trigger can not be found; otherwise, it
      returns a list of the parameters from the event.
    #==============================================================================
    =end
                 本帖来自P1论坛作者BB崽,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=4005  若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
    天天去同能,天天有童年!
    回复 送礼论坛版权

    使用道具 举报

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

    本版积分规则

    关闭

    幸运抽奖

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

    立即查看

    聊天机器人
    Loading...

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

    GMT+8, 2025-3-15 00:05 , Processed in 0.138663 second(s), 53 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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