- Building Minecraft Server Modifications
- Cody M. Sommer
- 306字
- 2021-08-04 10:09:51
Introduction to APIs
API is an acronym for Application Programming Interface. An API helps to control how various software components are used. As mentioned in the previous chapter, CraftBukkit includes the Minecraft code in a form that is easier for developers to utilize in creating plugins. CraftBukkit has a lot of code that we do not need to access for creating plugins. It also includes code that we should not use as it could cause the server to become unstable. Bukkit provides us with the classes that we can use to properly modify the game. Basically, Bukkit acts as a bridge between our plugin and the CraftBukkit server. The Bukkit team adds new classes, methods, and so on, to the API as new features develop in Minecraft, but the preexisting code rarely changes. This ensures that our Bukkit plugins will still function correctly months or even years from now. Even though new versions of Minecraft/CraftBukkit are being released. For example, if Minecraft were to change how an entity's health is handled, we would notice no difference.
The CraftBukkit jar would account for this change and when our plugin calls the getHealth()
method it would function exactly as it had before the update. Another example of how great the Bukkit API is would be the addition of new Minecraft features, such as new items. Let's say that we've created a plugin that gives food an expiration date. To see if an item is food we'd use the isEdible()
method. Minecraft continues to create new items. If one of these new items was Pumpkin Bread, CraftBukkit would flag that type of item as edible and would therefore be given an expiration date by our plugin. A year from now, any new food items would still be given expiration dates without us needing to change any of our code.
- Instant Node Package Manager
- 劍指Offer(專項突破版):數據結構與算法名企面試題精講
- INSTANT Django 1.5 Application Development Starter
- 零基礎學Python網絡爬蟲案例實戰全流程詳解(高級進階篇)
- 高級語言程序設計(C語言版):基于計算思維能力培養
- 軟件測試技術指南
- Getting Started with LLVM Core Libraries
- 從Java到Web程序設計教程
- Visual Foxpro 9.0數據庫程序設計教程
- Web Developer's Reference Guide
- Xamarin Blueprints
- Hacking Android
- R的極客理想:量化投資篇
- Python預測分析與機器學習
- After Effects CC技術大全