<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[Save-Point - All Forums]]></title>
		<link>https://www.save-point.org/</link>
		<description><![CDATA[Save-Point - https://www.save-point.org]]></description>
		<pubDate>Tue, 02 Jun 2026 17:15:38 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[The Weekly Gazette 5-31-2026]]></title>
			<link>https://www.save-point.org/thread-13494.html</link>
			<pubDate>Mon, 01 Jun 2026 04:11:12 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=5">DerVVulfman</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13494.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align">
<img src="https://save-point.org/images/Gazette.png" loading="lazy"  alt="[Image: Gazette.png]" class="mycode_img" /><br />
</div>
<div style="text-align: right;" class="mycode_align">(May 25 to May 31, 2026)<br />
<br />
<a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<br />
Welcome dear readers to the latest issue of the Weekly Gazette!  Here in the Gazette, we give you the news in brief of what occurred in the past week as well as provide any news happening in Save-Point itself<br />
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Official Area</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> General Chat</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> <div style="height: 150px; border:1px solid; padding:4px; margin:1px; overflow:auto;">Will there be a peace deal with Iran turning over all their nuclear material while ensuring the Strait of Hormuz is not mined? That is one of the questions asked in this week's <a href="showthread.php?tid=7628"><span class="highlight">News of the World</span></a>.  The US offered two paths towards peace, one even allowing Iran to heavily dilute their nuclear stockpiles. Howver, the US had to fire upon missile bases and fast boats attempting to once more establish mines in the Strait.<br />
<br />
Russia's invasion of Ukraine is taking its toll, this while a senior Kyiv commander suggested that the next six months will be vital to shred Moscow's ambitions while Russian troops are exhausted. Its toll may also be taking its toll on Russia's President Vladimir Putin as rumors of stand-ins during public appearances re-emerge when a fellow politician used another name when addressing the President. Ukraine's President Zelensky put out a request for more Patriot anti-missile batteries as he foresees more attacks in coming months, this just as roughly 300 more drones were sailed during a thunderous Russian air attack killing five civilians and wounding fourty more. But chaotic as Russia's attacks have been, Moscow has been constantly endangering neighboring NATO nations, now actively striking an apartment building in Romania. It was only late April that fragments of a Russian Drone were recovered in Moldavia after damaging a utility pole and part of a residencial building.<br />
<br />
In the US, 50,000 residents had to evacuate an area near a chemical plant in Orange County, California. US President Trump declared a Federal Emergency as there was a threat of a catastrophic explosion, though the Orange County Fire Authority states the threat of explosion has been eliminated, eliminated as a crack in the tank appeared relieving the massive pressure buildup. The EPA is currently in Orange County, providing air monitoring support. Though they haven't found anything in the residential areas, monitoring continues while they have closed roads leading up to the plant. The war against fraud continues as two in Minnesota, Shamso Ahmed Hassan and Hanaan Mursal Yusuf, both of Somalian heritage, were arrested for more than &#36;21 Million in theft of funds meant for Autism services. And for Democrats, the situation must be horrid when CNN itself blasts former First-Lady Jill Biden over her complete reversal of comments she made about her husband, Former President Biden and his health concerns. It is not just Graham Platner taking heat over the comments and his mass-deleted Reddit posts that insulted a Purple Heart recipient, but now Democrats Warren, Schumer, Sanders and Jeffries supporting Platner are being torn into.<br />
<br />
China is attempting to exert pressure in the pacific, restricting rare earth minerals to Japan in an attempt to halt the U.S. from supplying defense technology to Japan and to Taiwan which is required by the 1979 Taiwan Relations Act. China released video of a NATO warship from the Netherlands threatened by two CCP warships and a fighter in what the Dutch Frigate stated were international waters, yet China asserts as their territory as they continue to claim much of the South China sea including waters of other nearby nations. And in a response to China's encroachment, the US, the UK and Australia have unveiled a new joint project to develop advanced underwater drones as Chinese-linked vessels have been linked to incidents involving damaged undersea cables near Taiwan and in European waters.<br />
<br />
The Global emergency of Congo's Ebola outbreak complicated by militant groups vying for power and arson of treatment centers, Germany's taxpayer money given to charities tied to Islamic Relief Worldwide classified as a terror group in 2014 and the Muslim Brotherhood, the New York City man hired by the Iranian Regime sentenced for 10 years in a murder-for-hire plot to kill a human rights activist and journalist, &#36;26 Billion spent in Vladimir Putin's mission to live forever with 3D printed organ transplants, The bill going through the US House of Representatives requiring only native-born US citizens be members of congress, as others may actively have allegiance to their native borne lands, and more hit this week's news.</div>
<span style="font-size: x-small;" class="mycode_size"><span style="font-style: italic;" class="mycode_i">Reduced from 21.3K words down to 677</span></span><br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Games Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Development Discussion</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> For those wondering <a href="showthread.php?tid=395"><span class="highlight">What's up among fellow RMers</span></a>, Remi-chan has been touching up the text in her game, working throughout the 1st non-tutorial arc of her game, though has to contend with events that take place in and after the city of Brisbane. However, she also worked dilligently to finish the update to all the message popups since she overhauled the icons in play.<br />
<br />
Remi-chan ventured into the <a href="showthread.php?tid=2870"><span class="highlight">Maps and screenshots thread</span></a> to post scenes that have since been updated for her game, be they warnings not to go boom near aggregiously placed petrol pumps, looks of apprehension given to mere watercoolers, and remembrances of godly heal potions.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Upcoming Projects</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Though it is the twilight of spring, romance still blooms. So hearken all to the world crafted by TsunamiJuria and her dark romance that is <a href="showthread.php?tid=13489"><span class="highlight">Haunted Divinity</span></a>.  Haunted Divinity is a visual novel that tells the tale of a fallen god and the novelist who found each other against all odds. With artwork and character designs by TsunamiJuria, Vespa and krisisnotcover, music by zachjohnfriesen and Jake 'The Voice' Parr, this first visual novel demo lasting 45 minutes is a solid way to end the season.<br />
<br />
It has been a while since kyondes worked upon <a href="showthread.php?tid=11177"><span class="highlight">Klans XP</span></a>, but his venture into creating a kingdom-building strategy game now improved the scouting system.  Coupled with a new means to transfer between maps and updates to allow animations hovering atop controleld NPCs, kyonides also worked out bugs that prevented clan data from being recorded.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Material Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Tools</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Another game design system has shown up, and not one by Enterbrain as it is surprisingly free to use unless you wish to actively go commercial.  It is called <a href="showthread.php?tid=13493"><span class="highlight">RPG Paper Maker</span></a> and this system supports Windows, Linux, and macOS. Even moreso, this system utilizes JavaScript for plugins and from all aspects supports 3D styled constructs.  The forums accessible at their website shows gemeral introductions dating as far back as November 2022, preceding RPG Maker Unity by a year. And yet is ahead of the next iteration RPGMaker u2u with map rotation.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Scripts Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> RPGMaker XP (RGSS) Engine</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> If you  are tired of using the default system to dictate what elements the members of your party have affinity with, kyonides released <a href="showthread.php?tid=13485"><span class="highlight">KustomElemState XP</span></a> which lets developers create a means to add elements and state ranks independently.<br />
<br />
A revision of a two-decades-old script has appeared with <a href="showthread.php?tid=13488"><span class="highlight">Reserve Party Tools</span></a>. Originally by RPG Advocate, the script allowed the player to swap their party members with a reserve roster of heroes, even allowing them to gain some percentage of experience points from battles they're not a part. However, much of the script contained massive rewrites to the default scripts. DerVVulfman's re-released edition worked to limit the number of rewritten scripts while performing some repairs or eliminating some issues.<br />
<br />
After discovering that the engine has always held this capability, DerVVulfman wrote <a href="showthread.php?tid=13490"><span class="highlight">MUSIC EFFECT FADE</span></a>, a small script that allows one to set a fade-out effect for melodies normally associated with battle victories, triggered treasure discoveries and the like. Useful if one has a longer-than-normal tune in use.<br />
<br />
It was three years ago when kyonides released <a href="showthread.php?tid=8759"><span class="highlight">Skill Roulette XP</span></a>, a system that could let a magic user cast a spell at random. But now he has returned, and his virtual Wild-Magic-like system now adds a new available feature. Random skills may now be available based upon the user's level.<br />
<br />
</div></div>
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Resources Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> 2D Resources</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Having populated the city streets with criminals brazen enough to show their faces, the <a href="showthread.php?tid=11336"><span class="highlight">Various RMXP sprites by Ace_V</span></a> now appears focused upon drier climates, sand swept lands and the deep desert. In earthen colors accented by white and a turban to protect his head, the first of Ace_V's desert nomads has appeared.<br />
<br />
</div></div>
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Creativity Section</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Art and Design</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Another presentation has been announced within Save-Point's Museum of Art and once more the gallery dedicated to <a href="showthread.php?tid=8230"><span class="highlight">Remi-chan's Neato Arty thread thing!</span></a> has its doors flung wide. On display this week, a young girl beset against land and sky, both alien to her and yet still that of her home. The aptly named Lass of Steel is but a child, her lore describing this maiden with flowing locks of chocolate as not even a teenager and yet one who had put aside her own turmoil to give aid to those in need. Emerald eyes filled with heartache cannot hide behind her glasses. This was another of the quick-paced illustrations by Remi-chan, taking but half the time she usually spends, and a speed-draw less than 6 minutes demonstrates such.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Literature</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Quiet is the forum's museum where tomes old and new may be discovered. Yet only this week, a new verse has been published and placed among <a href="showthread.php?tid=8405"><span class="highlight">Remi-chan's Writing Snippets~</span></a>. A child, not even in her teenage years, had known responcibilities for as long as she can remember. No mother nor father of her own, it was she who had to have the strength of parents to those younger than herself until what she thought was the end of days. But when the end of days indeed arrived, what came of her resolve?<br />
<br />
</div></div>
<br />
</div>
<br />
Well, that's it for this week.<br />
<br />
"Learning without thinking is wasteful; thinking without learning is dangerous." - Confucius<br />
<br />
<br />
<div style="background:#eebbff;border:4px ridge purple;color: #222222;padding:2px;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">PROSPECTIVE GAZETEERS!</span><br />
<br />
<span style="font-style: italic;" class="mycode_i">If you are the creator of a thread in Save-Point, you have the option of sending/writing your own entry into the Gazette.  The Gazette accepts write-in announcements (which will be doublechecked).  Likewise, the Gazette would welcome other content such as a comic-strip series, ongoing story arc, or the like.  <br />
<br />
Just PM DerVVulfman with the submissions. Submissions must be in by 10pm EST. </span></div>
<div style="text-align: right;" class="mycode_align"><a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<span style="font-size: x-small;" class="mycode_size">Regularly posted  12am (EST) (between Sunday &amp; Monday) based on U.S. Daylight Savings,<br />
4am Monday (UTC), 10pm Sunday(CST/MDT), 6pm Sunday (HST), 6am Monday (CEST),  2pm Monday (AEST) observing daylight savings<br />
5am Monday (UTC), 11pm Sunday(CST), 6pm Sunday (HST), 7am Monday (CET),  3pm Monday (AEST) Not observing daylight savings</span>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align">
<img src="https://save-point.org/images/Gazette.png" loading="lazy"  alt="[Image: Gazette.png]" class="mycode_img" /><br />
</div>
<div style="text-align: right;" class="mycode_align">(May 25 to May 31, 2026)<br />
<br />
<a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<br />
Welcome dear readers to the latest issue of the Weekly Gazette!  Here in the Gazette, we give you the news in brief of what occurred in the past week as well as provide any news happening in Save-Point itself<br />
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Official Area</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> General Chat</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> <div style="height: 150px; border:1px solid; padding:4px; margin:1px; overflow:auto;">Will there be a peace deal with Iran turning over all their nuclear material while ensuring the Strait of Hormuz is not mined? That is one of the questions asked in this week's <a href="showthread.php?tid=7628"><span class="highlight">News of the World</span></a>.  The US offered two paths towards peace, one even allowing Iran to heavily dilute their nuclear stockpiles. Howver, the US had to fire upon missile bases and fast boats attempting to once more establish mines in the Strait.<br />
<br />
Russia's invasion of Ukraine is taking its toll, this while a senior Kyiv commander suggested that the next six months will be vital to shred Moscow's ambitions while Russian troops are exhausted. Its toll may also be taking its toll on Russia's President Vladimir Putin as rumors of stand-ins during public appearances re-emerge when a fellow politician used another name when addressing the President. Ukraine's President Zelensky put out a request for more Patriot anti-missile batteries as he foresees more attacks in coming months, this just as roughly 300 more drones were sailed during a thunderous Russian air attack killing five civilians and wounding fourty more. But chaotic as Russia's attacks have been, Moscow has been constantly endangering neighboring NATO nations, now actively striking an apartment building in Romania. It was only late April that fragments of a Russian Drone were recovered in Moldavia after damaging a utility pole and part of a residencial building.<br />
<br />
In the US, 50,000 residents had to evacuate an area near a chemical plant in Orange County, California. US President Trump declared a Federal Emergency as there was a threat of a catastrophic explosion, though the Orange County Fire Authority states the threat of explosion has been eliminated, eliminated as a crack in the tank appeared relieving the massive pressure buildup. The EPA is currently in Orange County, providing air monitoring support. Though they haven't found anything in the residential areas, monitoring continues while they have closed roads leading up to the plant. The war against fraud continues as two in Minnesota, Shamso Ahmed Hassan and Hanaan Mursal Yusuf, both of Somalian heritage, were arrested for more than &#36;21 Million in theft of funds meant for Autism services. And for Democrats, the situation must be horrid when CNN itself blasts former First-Lady Jill Biden over her complete reversal of comments she made about her husband, Former President Biden and his health concerns. It is not just Graham Platner taking heat over the comments and his mass-deleted Reddit posts that insulted a Purple Heart recipient, but now Democrats Warren, Schumer, Sanders and Jeffries supporting Platner are being torn into.<br />
<br />
China is attempting to exert pressure in the pacific, restricting rare earth minerals to Japan in an attempt to halt the U.S. from supplying defense technology to Japan and to Taiwan which is required by the 1979 Taiwan Relations Act. China released video of a NATO warship from the Netherlands threatened by two CCP warships and a fighter in what the Dutch Frigate stated were international waters, yet China asserts as their territory as they continue to claim much of the South China sea including waters of other nearby nations. And in a response to China's encroachment, the US, the UK and Australia have unveiled a new joint project to develop advanced underwater drones as Chinese-linked vessels have been linked to incidents involving damaged undersea cables near Taiwan and in European waters.<br />
<br />
The Global emergency of Congo's Ebola outbreak complicated by militant groups vying for power and arson of treatment centers, Germany's taxpayer money given to charities tied to Islamic Relief Worldwide classified as a terror group in 2014 and the Muslim Brotherhood, the New York City man hired by the Iranian Regime sentenced for 10 years in a murder-for-hire plot to kill a human rights activist and journalist, &#36;26 Billion spent in Vladimir Putin's mission to live forever with 3D printed organ transplants, The bill going through the US House of Representatives requiring only native-born US citizens be members of congress, as others may actively have allegiance to their native borne lands, and more hit this week's news.</div>
<span style="font-size: x-small;" class="mycode_size"><span style="font-style: italic;" class="mycode_i">Reduced from 21.3K words down to 677</span></span><br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Games Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Development Discussion</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> For those wondering <a href="showthread.php?tid=395"><span class="highlight">What's up among fellow RMers</span></a>, Remi-chan has been touching up the text in her game, working throughout the 1st non-tutorial arc of her game, though has to contend with events that take place in and after the city of Brisbane. However, she also worked dilligently to finish the update to all the message popups since she overhauled the icons in play.<br />
<br />
Remi-chan ventured into the <a href="showthread.php?tid=2870"><span class="highlight">Maps and screenshots thread</span></a> to post scenes that have since been updated for her game, be they warnings not to go boom near aggregiously placed petrol pumps, looks of apprehension given to mere watercoolers, and remembrances of godly heal potions.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Upcoming Projects</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Though it is the twilight of spring, romance still blooms. So hearken all to the world crafted by TsunamiJuria and her dark romance that is <a href="showthread.php?tid=13489"><span class="highlight">Haunted Divinity</span></a>.  Haunted Divinity is a visual novel that tells the tale of a fallen god and the novelist who found each other against all odds. With artwork and character designs by TsunamiJuria, Vespa and krisisnotcover, music by zachjohnfriesen and Jake 'The Voice' Parr, this first visual novel demo lasting 45 minutes is a solid way to end the season.<br />
<br />
It has been a while since kyondes worked upon <a href="showthread.php?tid=11177"><span class="highlight">Klans XP</span></a>, but his venture into creating a kingdom-building strategy game now improved the scouting system.  Coupled with a new means to transfer between maps and updates to allow animations hovering atop controleld NPCs, kyonides also worked out bugs that prevented clan data from being recorded.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Material Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Tools</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Another game design system has shown up, and not one by Enterbrain as it is surprisingly free to use unless you wish to actively go commercial.  It is called <a href="showthread.php?tid=13493"><span class="highlight">RPG Paper Maker</span></a> and this system supports Windows, Linux, and macOS. Even moreso, this system utilizes JavaScript for plugins and from all aspects supports 3D styled constructs.  The forums accessible at their website shows gemeral introductions dating as far back as November 2022, preceding RPG Maker Unity by a year. And yet is ahead of the next iteration RPGMaker u2u with map rotation.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Scripts Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> RPGMaker XP (RGSS) Engine</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> If you  are tired of using the default system to dictate what elements the members of your party have affinity with, kyonides released <a href="showthread.php?tid=13485"><span class="highlight">KustomElemState XP</span></a> which lets developers create a means to add elements and state ranks independently.<br />
<br />
A revision of a two-decades-old script has appeared with <a href="showthread.php?tid=13488"><span class="highlight">Reserve Party Tools</span></a>. Originally by RPG Advocate, the script allowed the player to swap their party members with a reserve roster of heroes, even allowing them to gain some percentage of experience points from battles they're not a part. However, much of the script contained massive rewrites to the default scripts. DerVVulfman's re-released edition worked to limit the number of rewritten scripts while performing some repairs or eliminating some issues.<br />
<br />
After discovering that the engine has always held this capability, DerVVulfman wrote <a href="showthread.php?tid=13490"><span class="highlight">MUSIC EFFECT FADE</span></a>, a small script that allows one to set a fade-out effect for melodies normally associated with battle victories, triggered treasure discoveries and the like. Useful if one has a longer-than-normal tune in use.<br />
<br />
It was three years ago when kyonides released <a href="showthread.php?tid=8759"><span class="highlight">Skill Roulette XP</span></a>, a system that could let a magic user cast a spell at random. But now he has returned, and his virtual Wild-Magic-like system now adds a new available feature. Random skills may now be available based upon the user's level.<br />
<br />
</div></div>
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Resources Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> 2D Resources</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Having populated the city streets with criminals brazen enough to show their faces, the <a href="showthread.php?tid=11336"><span class="highlight">Various RMXP sprites by Ace_V</span></a> now appears focused upon drier climates, sand swept lands and the deep desert. In earthen colors accented by white and a turban to protect his head, the first of Ace_V's desert nomads has appeared.<br />
<br />
</div></div>
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Creativity Section</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Art and Design</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Another presentation has been announced within Save-Point's Museum of Art and once more the gallery dedicated to <a href="showthread.php?tid=8230"><span class="highlight">Remi-chan's Neato Arty thread thing!</span></a> has its doors flung wide. On display this week, a young girl beset against land and sky, both alien to her and yet still that of her home. The aptly named Lass of Steel is but a child, her lore describing this maiden with flowing locks of chocolate as not even a teenager and yet one who had put aside her own turmoil to give aid to those in need. Emerald eyes filled with heartache cannot hide behind her glasses. This was another of the quick-paced illustrations by Remi-chan, taking but half the time she usually spends, and a speed-draw less than 6 minutes demonstrates such.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Literature</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Quiet is the forum's museum where tomes old and new may be discovered. Yet only this week, a new verse has been published and placed among <a href="showthread.php?tid=8405"><span class="highlight">Remi-chan's Writing Snippets~</span></a>. A child, not even in her teenage years, had known responcibilities for as long as she can remember. No mother nor father of her own, it was she who had to have the strength of parents to those younger than herself until what she thought was the end of days. But when the end of days indeed arrived, what came of her resolve?<br />
<br />
</div></div>
<br />
</div>
<br />
Well, that's it for this week.<br />
<br />
"Learning without thinking is wasteful; thinking without learning is dangerous." - Confucius<br />
<br />
<br />
<div style="background:#eebbff;border:4px ridge purple;color: #222222;padding:2px;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">PROSPECTIVE GAZETEERS!</span><br />
<br />
<span style="font-style: italic;" class="mycode_i">If you are the creator of a thread in Save-Point, you have the option of sending/writing your own entry into the Gazette.  The Gazette accepts write-in announcements (which will be doublechecked).  Likewise, the Gazette would welcome other content such as a comic-strip series, ongoing story arc, or the like.  <br />
<br />
Just PM DerVVulfman with the submissions. Submissions must be in by 10pm EST. </span></div>
<div style="text-align: right;" class="mycode_align"><a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<span style="font-size: x-small;" class="mycode_size">Regularly posted  12am (EST) (between Sunday &amp; Monday) based on U.S. Daylight Savings,<br />
4am Monday (UTC), 10pm Sunday(CST/MDT), 6pm Sunday (HST), 6am Monday (CEST),  2pm Monday (AEST) observing daylight savings<br />
5am Monday (UTC), 11pm Sunday(CST), 6pm Sunday (HST), 7am Monday (CET),  3pm Monday (AEST) Not observing daylight savings</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[RPG PAPER MAKER]]></title>
			<link>https://www.save-point.org/thread-13493.html</link>
			<pubDate>Sun, 31 May 2026 22:35:41 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=5">DerVVulfman</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13493.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><a href="https://rpg-paper-maker.com/" target="_blank" rel="noopener" class="mycode_url"><img src="https://img.itch.zone/aW1nLzI2MTk2MTAyLnBuZw==/original/BJFTsu.png" loading="lazy"  alt="[Image: BJFTsu.png]" class="mycode_img" /></a></div>
<div style="text-align: center;" class="mycode_align"><span style="font-style: italic;" class="mycode_i"><span style="font-size: x-small;" class="mycode_size"><a href="https://rpg-paper-maker.com/" target="_blank" rel="noopener" class="mycode_url">Logo can be clicked for to visit the site</a></span></span></div>
<br />
<div style="text-align: center;" class="mycode_align"><a href="https://rpg-paper-maker.com/downloads/" target="_blank" rel="noopener" class="mycode_url"><span style="background: #e86e04"> <span style="color: #ffffff;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="font-family: Verdana;" class="mycode_font">DOWNLOADS FOR DESKTOP </span></span></span></span></span></a><br />
<a href="https://rpg-paper-maker.com/play" target="_blank" rel="noopener" class="mycode_url"><span style="background: #666666"> <span style="color: #ffffff;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="font-family: Verdana;" class="mycode_font">TRY APP ONLINE FOR FREE </span></span></span></span></span></a></div>
<br />
<br />
<br />
<br />
<span style="font-size: x-large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Why you should use RPG Paper Maker</span><br />
</span><span style="font-size: large;" class="mycode_size">RPG Paper Maker is a game making engine, free for non commercial use, allowing you to create a 3D game with 2D sprites and 3D objects with a very simple interface.</span><br />
<br />
<div style="float:left; padding:3px; border:0px; border-top:0px; border-right:0px; width:30%;;position:relative!important;"><span style="font-weight: bold;" class="mycode_b"><a href="https://rpg-paper-maker.com/#multiple-types-of-games" target="_blank" rel="noopener" class="mycode_url">Multiple Types of Games</a></span><br />
Mainly tailored for J-RPGs, but you can create almost any type of game with it such as Action RPGs, Tactical RPGs, etc <br />
</div><div style="float:left; padding:3px; border:0px; border-bottom: 0px; width:30%;;position:relative!important;"><span style="font-weight: bold;" class="mycode_b"><a href="https://rpg-paper-maker.com/#multiple-types-of-games" target="_blank" rel="noopener" class="mycode_url">Designed for Beginners</a></span><br />
The user friendly interface lets you build your game without worrying about complex stuff. </div><div style="float:left; padding:3px; border:0px; border-bottom: 0px; width:30%;;position:relative!important;"><span style="font-weight: bold;" class="mycode_b"><a href="https://rpg-paper-maker.com/#multiple-types-of-games" target="_blank" rel="noopener" class="mycode_url">And for Experienced Users</a></span><br />
Add your own plugins and game assets to your games to make it even more special! </div><div style="clear: both;;position:relative!important;"></div>
<br />
<div style="float:left; padding:3px; border:0px; border-top:0px; border-right:0px; width:30%;;position:relative!important;"><span style="font-weight: bold;" class="mycode_b"><a href="https://rpg-paper-maker.com/#multiple-types-of-games" target="_blank" rel="noopener" class="mycode_url">Free</a></span><br />
As long as you don’t have any profit with your games, you can use RPG Paper Maker freely! Awesome! </div>
<div style="float:left; padding:3px; border:0px; border-bottom: 0px; width:30%;;position:relative!important;"><span style="font-weight: bold;" class="mycode_b"><a href="https://rpg-paper-maker.com/#multiple-types-of-games" target="_blank" rel="noopener" class="mycode_url">Commercialize</a></span><br />
Any commercial game made with RPG Paper Maker will require a one time buy license for a team to be sold. No other fees. </div><div style="float:left; padding:3px; border:0px; border-bottom: 0px; width:30%;;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">S<a href="https://rpg-paper-maker.com/#multiple-types-of-games" target="_blank" rel="noopener" class="mycode_url">ee More Features</a></span><br />
Click here to see more about RPG Paper Maker features! </div><div style="clear: both;;position:relative!important;"></div>
<br />
<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">Making 3D games is too hard? RPG Paper Maker will simplify your work</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/town-desert.png" loading="lazy"  alt="[Image: town-desert.png]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">RPG Paper Maker is a game engine, free for non-commercial use, that allows you to create a 3D universe with many 2D sprites and even 3D objects using a simple interface. It is available on all major platforms: Windows, Linux, and macOS.</span><br />
<span style="font-size: medium;" class="mycode_size"><br />
RPG Paper Maker gives you a way to create RPGs in a full 3D world as easily as in 2D! It also comes packed with cool retro-inspired graphic assets for you to use in your own projects.</span><br />
<br />
<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">Multiple types of games</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/battle.png" loading="lazy"  alt="[Image: battle.png]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">The engine is mainly tailored for J-RPGs, but you can create almost any type of game, such as Action RPGs and Tactical RPGs (plugin coming soon).</span><br />
<br />
<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">Designed for beginners...</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/dungeon.png" loading="lazy"  alt="[Image: dungeon.png]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">Our philosophy is simple: enabling you to create a 3D video game without any knowledge of:<br />
</span><ul class="mycode_list"><li><span style="color: #444444;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: 'MS Sans Serif', Geneva, sans-serif;" class="mycode_font"><span style="font-weight: bold;" class="mycode_b">Programming</span></span></span></span><br />
</li>
<li><span style="color: #444444;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: 'MS Sans Serif', Geneva, sans-serif;" class="mycode_font"><span style="font-weight: bold;" class="mycode_b">3D modeling</span></span></span></span><br />
</li>
<li><span style="font-size: medium;" class="mycode_size"><span style="font-family: 'MS Sans Serif', Geneva, sans-serif;" class="mycode_font"><span style="font-weight: bold;" class="mycode_b"><span style="color: #444444;" class="mycode_color">Pixel art</span></span></span></span><br />
</li>
</ul>
<span style="font-size: medium;" class="mycode_size">The user-friendly interface lets you build your game without worrying about complex details.</span><br />
<br />
<br />
<br />
<span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">...and for experienced users!</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/code.png" loading="lazy"  alt="[Image: code.png]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">If you have knowledge in programming and/or modeling, we've got you covered. You will be able to:</span><ul class="mycode_list"><li><span style="color: #444444;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: 'MS Sans Serif', Geneva, sans-serif;" class="mycode_font">Create or modify <span style="font-weight: bold;" class="mycode_b">JavaScript plugins</span></span></span></span><br />
</li>
<li><span style="font-size: medium;" class="mycode_size"><span style="font-family: 'MS Sans Serif', Geneva, sans-serif;" class="mycode_font"><span style="color: #444444;" class="mycode_color">Import your own <span style="font-weight: bold;" class="mycode_b">3D models in .obj format</span></span></span></span><br />
</li>
</ul>
<span style="font-size: medium;" class="mycode_size">Combining your skills with RPG Paper Maker can make yo</span>ur games even more unique!<br />
<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">Have fun with the 3D map editor</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/map-editor.png" loading="lazy"  alt="[Image: map-editor.png]" class="mycode_img" /> <br />
<br />
<span style="font-size: medium;" class="mycode_size">Manage your 3D maps the same way you would in 2D games! This includes: floors, autotiles, sprites (fixed, face, double, quadra), walls, mountains, 3D objects, and objects (NPCs, chests, etc.).</span><br />
<br />
<span style="font-size: medium;" class="mycode_size">Check out the basics here: <a href="https://rpg-paper-maker.gitbook.io/rpg-paper-maker/essentials/map-editor" target="_blank" rel="noopener" class="mycode_url">Map Editor Guide</a></span><br />
<br />
<br />
<br />
<span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Play with the objects &amp; events system</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/objects-events.png" loading="lazy"  alt="[Image: objects-events.png]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">You can use the event system by adding objects to your maps that interact with others. Common examples include NPCs, chests, treasures, and doors.</span><br />
<br />
<span style="font-size: medium;" class="mycode_size">Your hero is also an object, so you can customize how they react to the environment and player inputs.</span><br />
<br />
<span style="font-size: medium;" class="mycode_size">Check out the guide here: <a href="https://rpg-paper-maker.gitbook.io/rpg-paper-maker/essentials/objects-and-events" target="_blank" rel="noopener" class="mycode_url">Objects &amp; Events Guide</a></span><br />
<br />
<br />
<br />
<span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Manage collisions easily</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/collisions.png" loading="lazy"  alt="[Image: collisions.png]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">Collisions are easy to manage because they work similarly to 2D assets. Your 2D drawings are automatically converted into 3D bounding boxes.</span><br />
<br />
<span style="font-size: medium;" class="mycode_size">Check out the guide here: <a href="https://rpg-paper-maker.gitbook.io/rpg-paper-maker/essentials/tilesets-and-collisions" target="_blank" rel="noopener" class="mycode_url">Tilesets &amp; Collisions Guide</a></span><br />
<br />
<br />
<br />
<span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Control the camera</span></span><br />
<br />
<img src="https://585285814-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M363zQNw4J-oG6yFLFu-1703796690%2Fuploads%2F0H1i81Y5hXEYZiJX2r2r%2Fcamera.gif?alt=media&amp;token=1dad9ecf-b82f-454a-85cd-78a90fba0686" loading="lazy"  alt="[Image: spaces%2F-M363zQNw4J-oG6yFLFu-1703796690...a90fba0686]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">Control the camera easily using the associated event commands. You can create amazing cutscenes!</span><br />
<br />
<span style="font-size: medium;" class="mycode_size">Check out the guide here: <a href="https://rpg-paper-maker.gitbook.io/rpg-paper-maker/essentials/camera-control" target="_blank" rel="noopener" class="mycode_url">Camera Control Guide</a></span><br />
<br />
<br />
<div style="text-align: center;" class="mycode_align"><font size="1">More at the website.</font></div>
<div style="text-align: center;" class="mycode_align"><a href="https://rpg-paper-maker.com/rpg-paper-maker-eula/" target="_blank" rel="noopener" class="mycode_url"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: x-small;" class="mycode_size">RPG PAPER MAKER EULA</span></span></a></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><a href="https://rpg-paper-maker.com/" target="_blank" rel="noopener" class="mycode_url"><img src="https://img.itch.zone/aW1nLzI2MTk2MTAyLnBuZw==/original/BJFTsu.png" loading="lazy"  alt="[Image: BJFTsu.png]" class="mycode_img" /></a></div>
<div style="text-align: center;" class="mycode_align"><span style="font-style: italic;" class="mycode_i"><span style="font-size: x-small;" class="mycode_size"><a href="https://rpg-paper-maker.com/" target="_blank" rel="noopener" class="mycode_url">Logo can be clicked for to visit the site</a></span></span></div>
<br />
<div style="text-align: center;" class="mycode_align"><a href="https://rpg-paper-maker.com/downloads/" target="_blank" rel="noopener" class="mycode_url"><span style="background: #e86e04"> <span style="color: #ffffff;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="font-family: Verdana;" class="mycode_font">DOWNLOADS FOR DESKTOP </span></span></span></span></span></a><br />
<a href="https://rpg-paper-maker.com/play" target="_blank" rel="noopener" class="mycode_url"><span style="background: #666666"> <span style="color: #ffffff;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="font-family: Verdana;" class="mycode_font">TRY APP ONLINE FOR FREE </span></span></span></span></span></a></div>
<br />
<br />
<br />
<br />
<span style="font-size: x-large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Why you should use RPG Paper Maker</span><br />
</span><span style="font-size: large;" class="mycode_size">RPG Paper Maker is a game making engine, free for non commercial use, allowing you to create a 3D game with 2D sprites and 3D objects with a very simple interface.</span><br />
<br />
<div style="float:left; padding:3px; border:0px; border-top:0px; border-right:0px; width:30%;;position:relative!important;"><span style="font-weight: bold;" class="mycode_b"><a href="https://rpg-paper-maker.com/#multiple-types-of-games" target="_blank" rel="noopener" class="mycode_url">Multiple Types of Games</a></span><br />
Mainly tailored for J-RPGs, but you can create almost any type of game with it such as Action RPGs, Tactical RPGs, etc <br />
</div><div style="float:left; padding:3px; border:0px; border-bottom: 0px; width:30%;;position:relative!important;"><span style="font-weight: bold;" class="mycode_b"><a href="https://rpg-paper-maker.com/#multiple-types-of-games" target="_blank" rel="noopener" class="mycode_url">Designed for Beginners</a></span><br />
The user friendly interface lets you build your game without worrying about complex stuff. </div><div style="float:left; padding:3px; border:0px; border-bottom: 0px; width:30%;;position:relative!important;"><span style="font-weight: bold;" class="mycode_b"><a href="https://rpg-paper-maker.com/#multiple-types-of-games" target="_blank" rel="noopener" class="mycode_url">And for Experienced Users</a></span><br />
Add your own plugins and game assets to your games to make it even more special! </div><div style="clear: both;;position:relative!important;"></div>
<br />
<div style="float:left; padding:3px; border:0px; border-top:0px; border-right:0px; width:30%;;position:relative!important;"><span style="font-weight: bold;" class="mycode_b"><a href="https://rpg-paper-maker.com/#multiple-types-of-games" target="_blank" rel="noopener" class="mycode_url">Free</a></span><br />
As long as you don’t have any profit with your games, you can use RPG Paper Maker freely! Awesome! </div>
<div style="float:left; padding:3px; border:0px; border-bottom: 0px; width:30%;;position:relative!important;"><span style="font-weight: bold;" class="mycode_b"><a href="https://rpg-paper-maker.com/#multiple-types-of-games" target="_blank" rel="noopener" class="mycode_url">Commercialize</a></span><br />
Any commercial game made with RPG Paper Maker will require a one time buy license for a team to be sold. No other fees. </div><div style="float:left; padding:3px; border:0px; border-bottom: 0px; width:30%;;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">S<a href="https://rpg-paper-maker.com/#multiple-types-of-games" target="_blank" rel="noopener" class="mycode_url">ee More Features</a></span><br />
Click here to see more about RPG Paper Maker features! </div><div style="clear: both;;position:relative!important;"></div>
<br />
<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">Making 3D games is too hard? RPG Paper Maker will simplify your work</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/town-desert.png" loading="lazy"  alt="[Image: town-desert.png]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">RPG Paper Maker is a game engine, free for non-commercial use, that allows you to create a 3D universe with many 2D sprites and even 3D objects using a simple interface. It is available on all major platforms: Windows, Linux, and macOS.</span><br />
<span style="font-size: medium;" class="mycode_size"><br />
RPG Paper Maker gives you a way to create RPGs in a full 3D world as easily as in 2D! It also comes packed with cool retro-inspired graphic assets for you to use in your own projects.</span><br />
<br />
<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">Multiple types of games</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/battle.png" loading="lazy"  alt="[Image: battle.png]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">The engine is mainly tailored for J-RPGs, but you can create almost any type of game, such as Action RPGs and Tactical RPGs (plugin coming soon).</span><br />
<br />
<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">Designed for beginners...</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/dungeon.png" loading="lazy"  alt="[Image: dungeon.png]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">Our philosophy is simple: enabling you to create a 3D video game without any knowledge of:<br />
</span><ul class="mycode_list"><li><span style="color: #444444;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: 'MS Sans Serif', Geneva, sans-serif;" class="mycode_font"><span style="font-weight: bold;" class="mycode_b">Programming</span></span></span></span><br />
</li>
<li><span style="color: #444444;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: 'MS Sans Serif', Geneva, sans-serif;" class="mycode_font"><span style="font-weight: bold;" class="mycode_b">3D modeling</span></span></span></span><br />
</li>
<li><span style="font-size: medium;" class="mycode_size"><span style="font-family: 'MS Sans Serif', Geneva, sans-serif;" class="mycode_font"><span style="font-weight: bold;" class="mycode_b"><span style="color: #444444;" class="mycode_color">Pixel art</span></span></span></span><br />
</li>
</ul>
<span style="font-size: medium;" class="mycode_size">The user-friendly interface lets you build your game without worrying about complex details.</span><br />
<br />
<br />
<br />
<span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">...and for experienced users!</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/code.png" loading="lazy"  alt="[Image: code.png]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">If you have knowledge in programming and/or modeling, we've got you covered. You will be able to:</span><ul class="mycode_list"><li><span style="color: #444444;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: 'MS Sans Serif', Geneva, sans-serif;" class="mycode_font">Create or modify <span style="font-weight: bold;" class="mycode_b">JavaScript plugins</span></span></span></span><br />
</li>
<li><span style="font-size: medium;" class="mycode_size"><span style="font-family: 'MS Sans Serif', Geneva, sans-serif;" class="mycode_font"><span style="color: #444444;" class="mycode_color">Import your own <span style="font-weight: bold;" class="mycode_b">3D models in .obj format</span></span></span></span><br />
</li>
</ul>
<span style="font-size: medium;" class="mycode_size">Combining your skills with RPG Paper Maker can make yo</span>ur games even more unique!<br />
<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">Have fun with the 3D map editor</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/map-editor.png" loading="lazy"  alt="[Image: map-editor.png]" class="mycode_img" /> <br />
<br />
<span style="font-size: medium;" class="mycode_size">Manage your 3D maps the same way you would in 2D games! This includes: floors, autotiles, sprites (fixed, face, double, quadra), walls, mountains, 3D objects, and objects (NPCs, chests, etc.).</span><br />
<br />
<span style="font-size: medium;" class="mycode_size">Check out the basics here: <a href="https://rpg-paper-maker.gitbook.io/rpg-paper-maker/essentials/map-editor" target="_blank" rel="noopener" class="mycode_url">Map Editor Guide</a></span><br />
<br />
<br />
<br />
<span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Play with the objects &amp; events system</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/objects-events.png" loading="lazy"  alt="[Image: objects-events.png]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">You can use the event system by adding objects to your maps that interact with others. Common examples include NPCs, chests, treasures, and doors.</span><br />
<br />
<span style="font-size: medium;" class="mycode_size">Your hero is also an object, so you can customize how they react to the environment and player inputs.</span><br />
<br />
<span style="font-size: medium;" class="mycode_size">Check out the guide here: <a href="https://rpg-paper-maker.gitbook.io/rpg-paper-maker/essentials/objects-and-events" target="_blank" rel="noopener" class="mycode_url">Objects &amp; Events Guide</a></span><br />
<br />
<br />
<br />
<span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Manage collisions easily</span></span><br />
<br />
<img src="https://rpg-paper-maker.com/uploads/collisions.png" loading="lazy"  alt="[Image: collisions.png]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">Collisions are easy to manage because they work similarly to 2D assets. Your 2D drawings are automatically converted into 3D bounding boxes.</span><br />
<br />
<span style="font-size: medium;" class="mycode_size">Check out the guide here: <a href="https://rpg-paper-maker.gitbook.io/rpg-paper-maker/essentials/tilesets-and-collisions" target="_blank" rel="noopener" class="mycode_url">Tilesets &amp; Collisions Guide</a></span><br />
<br />
<br />
<br />
<span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Control the camera</span></span><br />
<br />
<img src="https://585285814-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M363zQNw4J-oG6yFLFu-1703796690%2Fuploads%2F0H1i81Y5hXEYZiJX2r2r%2Fcamera.gif?alt=media&amp;token=1dad9ecf-b82f-454a-85cd-78a90fba0686" loading="lazy"  alt="[Image: spaces%2F-M363zQNw4J-oG6yFLFu-1703796690...a90fba0686]" class="mycode_img" /><br />
<br />
<span style="font-size: medium;" class="mycode_size">Control the camera easily using the associated event commands. You can create amazing cutscenes!</span><br />
<br />
<span style="font-size: medium;" class="mycode_size">Check out the guide here: <a href="https://rpg-paper-maker.gitbook.io/rpg-paper-maker/essentials/camera-control" target="_blank" rel="noopener" class="mycode_url">Camera Control Guide</a></span><br />
<br />
<br />
<div style="text-align: center;" class="mycode_align"><font size="1">More at the website.</font></div>
<div style="text-align: center;" class="mycode_align"><a href="https://rpg-paper-maker.com/rpg-paper-maker-eula/" target="_blank" rel="noopener" class="mycode_url"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: x-small;" class="mycode_size">RPG PAPER MAKER EULA</span></span></a></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[MUSIC EFFECT FADE  (A small Scriptette)]]></title>
			<link>https://www.save-point.org/thread-13490.html</link>
			<pubDate>Fri, 29 May 2026 13:56:51 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=5">DerVVulfman</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13490.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">MUSIC EFFECT FADE</span></span><br />
<span style="font-size: medium;" class="mycode_size">Version: 1.0</span></div>
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Introduction</span></span><br />
<br />
This simple scriptette takes advantage of a feature built into RPGMaker's built-in Audio module,  and allows you to  fade out music events  in much the same way as you could background music and ambient sound effects.<br />
<br />
Indeed, no alteration was made to the Audio class.  However, this feature has always  been available  despite no method  defined for it  within the Game_System class nor any map event akin to [Fade Out BGM] or the like.<br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Script</span></span><br />
<br />
<div class="tborder">
  			<div class="thead" style="padding:4px; margin:1px;"><input type="button" class="button" value="+" style="font-family:Monospace; padding:0px" onclick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].style.display=='none'){ this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='';this.value='-';} else {this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='none';this.value='+';}"/> I can't believe EnterBrain neglected to include THIS</div>
  			<div class="trow2" style="display:none; padding:4px; margin:1px;">
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>#==============================================================================<br />
# ** MUSIC EFFECT FADE<br />
#------------------------------------------------------------------------------<br />
#    by DerVVulfman<br />
#    version 1.0<br />
#    05-29-2026 (mm/dd/yyyy)<br />
#    RGSS / RPGMaker XP<br />
#==============================================================================<br />
#<br />
#  INTRODUCTION:<br />
#<br />
#  This simple scriptette takes advantage of a feature built into RPGMaker's<br />
#  built-in Audio module,  and allows you to  fade out music events  in much<br />
#  the same way as you could background music and ambient sound effects.<br />
#<br />
#  Indeed, no alteration was made to the Audio class.  However, this feature<br />
#  has always  been available  despite no method  defined for it  within the<br />
#  Game_System class nor any map event akin to [Fade Out BGM] or the like.<br />
#<br />
#  To use upon an already playing ME/Music Event, run either script call:<br />
#<br />
#        * &#36;game_system.me_fade(time)<br />
#        * me_fade(time)<br />
#          - time : duration in seconds<br />
#<br />
#        EX: &#36;game_system.me_fade(0.5)<br />
#          - Fades out the currently playing ME in 1/2 a second<br />
#<br />
#  This is to be executed after music events are already playing, and inten-<br />
#  def for music events that are considered longer than normal.  Such longer<br />
#  music events would be akin to victory music from a Final Fantasy game.<br />
#<br />
#==============================================================================<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Game_System<br />
#------------------------------------------------------------------------------<br />
#  This class handles data surrounding the system. Backround music, etc.<br />
#  is managed here as well. Refer to "&#36;game_system" for the instance of <br />
#  this class.<br />
#==============================================================================<br />
<br />
class Game_System<br />
<br />
  #--------------------------------------------------------------------------<br />
  # * Fade Out Music Effect<br />
  #   &nbsp;&nbsp;time : fade-out time (in seconds)<br />
  #--------------------------------------------------------------------------<br />
  def me_fade(time)<br />
    Audio.me_fade(time * 1000)<br />
  end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Interpreter<br />
#------------------------------------------------------------------------------<br />
#  This interpreter runs event commands. This class is used within the<br />
#  Game_System class and the Game_Event class.<br />
#==============================================================================<br />
<br />
class Interpreter<br />
<br />
  #--------------------------------------------------------------------------<br />
  # * Fade Out Music Effect<br />
  #   &nbsp;&nbsp;time : fade-out time (in seconds)<br />
  #--------------------------------------------------------------------------<br />
  def me_fade(time)<br />
    &#36;game_system.me_fade(time)<br />
  end<br />
<br />
end</code></div></div></div>
		</div>
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Instructions</span></span><br />
<br />
Just paste this below Scene_Debug and above Main.  And use either script command noted in the script to fade out the music event effect.<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Compatibility</span></span><br />
<br />
ABSOLUTELY NO INCOMPATABILITIES!  I don't think anyone noticed this.<br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Author's Notes</span></span><br />
<br />
<span style="color: #B20080;" class="mycode_color"><span style="font-family: Comic Sans MS;" class="mycode_font"><span style="font-weight: bold;" class="mycode_b">WHY HAD NO ONE NOTICED THIS!?!?</span></span></span>  <img src="https://www.save-point.org/images/smilies/ejlol/Thud.gif" alt="Head-desk Thud" title="Head-desk Thud" class="smilie smilie_56" /> <br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Terms and Conditions</span></span><br />
<br />
Yell at Enterbrainless for not including this in the base system even though I did no alteration to the Audio class itself.  THEY HAD THIS FEATURE POSSIBLE ALL THESE YEARS!!!]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">MUSIC EFFECT FADE</span></span><br />
<span style="font-size: medium;" class="mycode_size">Version: 1.0</span></div>
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Introduction</span></span><br />
<br />
This simple scriptette takes advantage of a feature built into RPGMaker's built-in Audio module,  and allows you to  fade out music events  in much the same way as you could background music and ambient sound effects.<br />
<br />
Indeed, no alteration was made to the Audio class.  However, this feature has always  been available  despite no method  defined for it  within the Game_System class nor any map event akin to [Fade Out BGM] or the like.<br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Script</span></span><br />
<br />
<div class="tborder">
  			<div class="thead" style="padding:4px; margin:1px;"><input type="button" class="button" value="+" style="font-family:Monospace; padding:0px" onclick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].style.display=='none'){ this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='';this.value='-';} else {this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='none';this.value='+';}"/> I can't believe EnterBrain neglected to include THIS</div>
  			<div class="trow2" style="display:none; padding:4px; margin:1px;">
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>#==============================================================================<br />
# ** MUSIC EFFECT FADE<br />
#------------------------------------------------------------------------------<br />
#    by DerVVulfman<br />
#    version 1.0<br />
#    05-29-2026 (mm/dd/yyyy)<br />
#    RGSS / RPGMaker XP<br />
#==============================================================================<br />
#<br />
#  INTRODUCTION:<br />
#<br />
#  This simple scriptette takes advantage of a feature built into RPGMaker's<br />
#  built-in Audio module,  and allows you to  fade out music events  in much<br />
#  the same way as you could background music and ambient sound effects.<br />
#<br />
#  Indeed, no alteration was made to the Audio class.  However, this feature<br />
#  has always  been available  despite no method  defined for it  within the<br />
#  Game_System class nor any map event akin to [Fade Out BGM] or the like.<br />
#<br />
#  To use upon an already playing ME/Music Event, run either script call:<br />
#<br />
#        * &#36;game_system.me_fade(time)<br />
#        * me_fade(time)<br />
#          - time : duration in seconds<br />
#<br />
#        EX: &#36;game_system.me_fade(0.5)<br />
#          - Fades out the currently playing ME in 1/2 a second<br />
#<br />
#  This is to be executed after music events are already playing, and inten-<br />
#  def for music events that are considered longer than normal.  Such longer<br />
#  music events would be akin to victory music from a Final Fantasy game.<br />
#<br />
#==============================================================================<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Game_System<br />
#------------------------------------------------------------------------------<br />
#  This class handles data surrounding the system. Backround music, etc.<br />
#  is managed here as well. Refer to "&#36;game_system" for the instance of <br />
#  this class.<br />
#==============================================================================<br />
<br />
class Game_System<br />
<br />
  #--------------------------------------------------------------------------<br />
  # * Fade Out Music Effect<br />
  #   &nbsp;&nbsp;time : fade-out time (in seconds)<br />
  #--------------------------------------------------------------------------<br />
  def me_fade(time)<br />
    Audio.me_fade(time * 1000)<br />
  end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Interpreter<br />
#------------------------------------------------------------------------------<br />
#  This interpreter runs event commands. This class is used within the<br />
#  Game_System class and the Game_Event class.<br />
#==============================================================================<br />
<br />
class Interpreter<br />
<br />
  #--------------------------------------------------------------------------<br />
  # * Fade Out Music Effect<br />
  #   &nbsp;&nbsp;time : fade-out time (in seconds)<br />
  #--------------------------------------------------------------------------<br />
  def me_fade(time)<br />
    &#36;game_system.me_fade(time)<br />
  end<br />
<br />
end</code></div></div></div>
		</div>
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Instructions</span></span><br />
<br />
Just paste this below Scene_Debug and above Main.  And use either script command noted in the script to fade out the music event effect.<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Compatibility</span></span><br />
<br />
ABSOLUTELY NO INCOMPATABILITIES!  I don't think anyone noticed this.<br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Author's Notes</span></span><br />
<br />
<span style="color: #B20080;" class="mycode_color"><span style="font-family: Comic Sans MS;" class="mycode_font"><span style="font-weight: bold;" class="mycode_b">WHY HAD NO ONE NOTICED THIS!?!?</span></span></span>  <img src="https://www.save-point.org/images/smilies/ejlol/Thud.gif" alt="Head-desk Thud" title="Head-desk Thud" class="smilie smilie_56" /> <br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Terms and Conditions</span></span><br />
<br />
Yell at Enterbrainless for not including this in the base system even though I did no alteration to the Audio class itself.  THEY HAD THIS FEATURE POSSIBLE ALL THESE YEARS!!!]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Haunted Divinity]]></title>
			<link>https://www.save-point.org/thread-13489.html</link>
			<pubDate>Thu, 28 May 2026 10:04:51 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=5699">TsunamiJuria</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13489.html</guid>
			<description><![CDATA[<img src="https://img.itch.zone/aW1nLzI2MTQ3MjMxLnBuZw==/original/PMkGsl.png" loading="lazy"  alt="[Image: PMkGsl.png]" class="mycode_img" /><br />
<br />
<span style="font-size: x-large;" class="mycode_size"><span style="color: #B20080;" class="mycode_color">Demo Download:</span> <a href="https://tsunamijuria.itch.io/haunted-divinity" target="_blank" rel="noopener" class="mycode_url">https://tsunamijuria.itch.io/haunted-divinity</a></span><br />
<br />
<span style="font-size: large;" class="mycode_size">Haunted Divinity is a narrative-driven visual novel centered on Venarok, a fallen god of poison and knowledge long feared for the monsters born of his sorrow.<br />
<br />
Secluded within a sanctum woven from venom and memory, Venarok has long abandoned mortal affairs—until an unexpected connection draws him back into a world he no longer understands. Through choice-driven storytelling, you will shape how he responds to intimacy, vulnerability, and the quiet pull of change.</span><br />
<br />
<img src="https://img.itch.zone/aW1nLzI1MTUyNjQ4LnBuZw==/original/Xo1pZE.png" loading="lazy"  alt="[Image: Xo1pZE.png]" class="mycode_img" /><br />
<br />
<div style="text-align: center;" class="mycode_align"><iframe width="560" height="315" src="//www.youtube-nocookie.com/embed/1iEEKmnfV4s" frameborder="0" allowfullscreen="true"></iframe><br />
<br />
<img src="https://img.itch.zone/aW1hZ2UvNDIwMjU4NC8yNzQxNDc4MC5wbmc=/original/3n3f3d.png" loading="lazy"  alt="[Image: 3n3f3d.png]" class="mycode_img" /><br />
<img src="https://img.itch.zone/aW1hZ2UvNDIwMjU4NC8yNzQxNDc5Ny5wbmc=/original/rCwp3R.png" loading="lazy"  alt="[Image: rCwp3R.png]" class="mycode_img" /><br />
<img src="https://img.itch.zone/aW1hZ2UvNDIwMjU4NC8yNzQxNDgwMS5wbmc=/original/Z%2BmZ%2Bj.png" loading="lazy"  alt="[Image: Z%2BmZ%2Bj.png]" class="mycode_img" /><br />
<img src="https://img.itch.zone/aW1hZ2UvNDIwMjU4NC8yNzQxNDgxMS5wbmc=/original/xosYPR.png" loading="lazy"  alt="[Image: xosYPR.png]" class="mycode_img" /></div>]]></description>
			<content:encoded><![CDATA[<img src="https://img.itch.zone/aW1nLzI2MTQ3MjMxLnBuZw==/original/PMkGsl.png" loading="lazy"  alt="[Image: PMkGsl.png]" class="mycode_img" /><br />
<br />
<span style="font-size: x-large;" class="mycode_size"><span style="color: #B20080;" class="mycode_color">Demo Download:</span> <a href="https://tsunamijuria.itch.io/haunted-divinity" target="_blank" rel="noopener" class="mycode_url">https://tsunamijuria.itch.io/haunted-divinity</a></span><br />
<br />
<span style="font-size: large;" class="mycode_size">Haunted Divinity is a narrative-driven visual novel centered on Venarok, a fallen god of poison and knowledge long feared for the monsters born of his sorrow.<br />
<br />
Secluded within a sanctum woven from venom and memory, Venarok has long abandoned mortal affairs—until an unexpected connection draws him back into a world he no longer understands. Through choice-driven storytelling, you will shape how he responds to intimacy, vulnerability, and the quiet pull of change.</span><br />
<br />
<img src="https://img.itch.zone/aW1nLzI1MTUyNjQ4LnBuZw==/original/Xo1pZE.png" loading="lazy"  alt="[Image: Xo1pZE.png]" class="mycode_img" /><br />
<br />
<div style="text-align: center;" class="mycode_align"><iframe width="560" height="315" src="//www.youtube-nocookie.com/embed/1iEEKmnfV4s" frameborder="0" allowfullscreen="true"></iframe><br />
<br />
<img src="https://img.itch.zone/aW1hZ2UvNDIwMjU4NC8yNzQxNDc4MC5wbmc=/original/3n3f3d.png" loading="lazy"  alt="[Image: 3n3f3d.png]" class="mycode_img" /><br />
<img src="https://img.itch.zone/aW1hZ2UvNDIwMjU4NC8yNzQxNDc5Ny5wbmc=/original/rCwp3R.png" loading="lazy"  alt="[Image: rCwp3R.png]" class="mycode_img" /><br />
<img src="https://img.itch.zone/aW1hZ2UvNDIwMjU4NC8yNzQxNDgwMS5wbmc=/original/Z%2BmZ%2Bj.png" loading="lazy"  alt="[Image: Z%2BmZ%2Bj.png]" class="mycode_img" /><br />
<img src="https://img.itch.zone/aW1hZ2UvNDIwMjU4NC8yNzQxNDgxMS5wbmc=/original/xosYPR.png" loading="lazy"  alt="[Image: xosYPR.png]" class="mycode_img" /></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Reserve Party Tools]]></title>
			<link>https://www.save-point.org/thread-13488.html</link>
			<pubDate>Wed, 27 May 2026 18:01:15 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=5">DerVVulfman</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13488.html</guid>
			<description><![CDATA[<div align="center"><span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Reserve Party Tools</span></span><br />
<span style="font-size: medium;" class="mycode_size">Original Version by RPG Advocate 4/12/2005<br />
Edit and repairs by DerVVulfman</span></div>
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Introduction</span></span><br />
<br />
This script enables support  for a "reserve" party of arbitrary size.  These characters don't fight in battle.  You are able to remove party members  and place them within the reserves by use of a new menu designed in the system. And adding new party members (with "Change Party Member") while the party is full will add them to the reserves.<br />
<br />
The original version required rewrites everywhere and expected the end-user to perform direct edits to the default scripts.  This version fixes some errors and oversights . And while still containing some direct alterations of default scripts, has those edited areas clearly marked for reference.<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Script</span></span><br />
<div class="tborder">
  			<div class="thead" style="padding:4px; margin:1px;"><input type="button" class="button" value="+" style="font-family:Monospace; padding:0px" onclick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].style.display=='none'){ this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='';this.value='-';} else {this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='none';this.value='+';}"/> The Script</div>
  			<div class="trow2" style="display:none; padding:4px; margin:1px;"><div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>#==============================================================================<br />
# Reserve Party Tools<br />
#------------------------------------------------------------------------------<br />
# by RPG Advocate 4/12/2005<br />
# Edit and repairs by DerVVulfman 6/27/2026<br />
# RGSS / RPGMaker XP<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# THE RESERVE PARTY MENU<br />
#<br />
# This script enables support&nbsp;&nbsp;for a "reserve" party of arbitrary size.&nbsp;&nbsp;These<br />
# characters don't fight in battle. If you want to give the player the ability<br />
# to switch characters between the party and reserve party,&nbsp;&nbsp;use either script<br />
# call shown below:<br />
#<br />
# *&nbsp;&nbsp;&#36;scene = Scene_PartyChange.new(value)<br />
# *&nbsp;&nbsp;change_party(value)<br />
#<br />
# The 'value' represents&nbsp;&nbsp;the maximun number of members you want in the party,<br />
# and can be left empty if using the default party size of '4'. You may set it<br />
# the range from 0-4, with 0 indicating full default party size of '4'. Values<br />
# beyond that range are invalid.<br />
#<br />
# *&nbsp;&nbsp;&#36;scene = Scene_PartyChange.new<br />
# *&nbsp;&nbsp;change_party<br />
#<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# RESERVIST BATTLE EXPERIENCE<br />
#<br />
# By default, inactive party members gain experience at the same rate as active<br />
# members. To change this,&nbsp;&nbsp;edit the EXP_PERCENT constant&nbsp;&nbsp;in the RPGAdvReserve<br />
# module to the percentage of experience you want the inactive party to gain.<br />
#<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# REQUIRED / PERMANENT PARTY MEMBERS<br />
#<br />
# This script supports required party members, actors that have been classified<br />
# as necessary within the party&nbsp;&nbsp;and cannot be removed.&nbsp;&nbsp;To make a party member<br />
# required or remove its required status, you may use either script calls:<br />
#<br />
# *&nbsp;&nbsp;&#36;game_party.actors[actor_id].required = true/false<br />
# *&nbsp;&nbsp;required_actor(actor_id, true/false)<br />
#<br />
# Both calls requests you&nbsp;&nbsp;to set a value of true,&nbsp;&nbsp;or false in order to remove<br />
# the required status.&nbsp;&nbsp;And within the Change Member menu,&nbsp;&nbsp;these party members<br />
# will appear with a predefined color in their names, default to Goldenrod.<br />
#<br />
# You should only make a character already in the party required. <br />
#<br />
# Making a reserve member 'required' will not work.<br />
#<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# CHANGING PARTY MEMBERS<br />
#<br />
# This script changes how the "Change Party Members" event command works.<br />
#<br />
# If you try to add a charater to the party when the party is full, that char-<br />
# acter will automatically be added to the reserve party.&nbsp;&nbsp;And if you remove a<br />
# party member, that character will be removed if they are in either the party<br />
# or the reserve party. However, it only recognizes a 4-party system when this<br />
# is applied, and does not recognize alternate party sizes.<br />
#<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# SCRIPT CALLS<br />
#<br />
# Initially,&nbsp;&nbsp;the only script calls noted were lenghty&nbsp;&nbsp;and direct commands to<br />
# the Game_Party class&nbsp;&nbsp;or direct calls&nbsp;&nbsp;to &#36;scene itself.&nbsp;&nbsp;Other script calls<br />
# were possible but not given. Here, we view all relevant script calls showing<br />
# both original and newer quick commands found in the Interpreter class:<br />
#<br />
#&nbsp;&nbsp; The Menu Command<br />
#&nbsp;&nbsp; ----------------<br />
#&nbsp;&nbsp; Used to bring up the actual Party/Reservist changing menu<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;&#36;scene = Scene_ChangeParty.new(max_size)<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;change_party(max_size)<br />
#<br />
#&nbsp;&nbsp; Set Actor Required Status<br />
#&nbsp;&nbsp; -------------------------<br />
#&nbsp;&nbsp; Used to define an in-party&nbsp;&nbsp;(not a reservist member)&nbsp;&nbsp;as a fixed member of<br />
#&nbsp;&nbsp; the current party.&nbsp;&nbsp;The 'actor_id' value is from the database ID.&nbsp;&nbsp;And the<br />
#&nbsp;&nbsp; 'flag' value is either true or false.<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;&#36;game_party.actors[actor_id].required = flag<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;required_actor(actor_id, flag)<br />
#<br />
#&nbsp;&nbsp; Swap Actors by database ID<br />
#&nbsp;&nbsp; --------------------------<br />
#&nbsp;&nbsp; Assuming there is a system&nbsp;&nbsp;tracking what actors&nbsp;&nbsp;(by database ID)&nbsp;&nbsp;are in<br />
#&nbsp;&nbsp; both the party and reserve party, this command lets you exchange one actor<br />
#&nbsp;&nbsp; from the party with one from the reserves.<br />
#&nbsp;&nbsp; IT DOES NOT RECOGNIZE THE 'REQUIRED" ACTOR STATUS<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;&#36;game_party.swap_by_id(party_actor_id, reserve_actor_id)<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;swap_by_id(party_actor_id, reserve_actor_id)<br />
#<br />
#&nbsp;&nbsp; Transfer Reservist to the Party by ID<br />
#&nbsp;&nbsp; -------------------------------------<br />
#&nbsp;&nbsp; Assuming there is a system&nbsp;&nbsp;tracking what actors&nbsp;&nbsp;(by database ID)&nbsp;&nbsp;are in<br />
#&nbsp;&nbsp; the reserve party, this command lets you remove the actor from the reserve<br />
#&nbsp;&nbsp; party and places it into the main/active party.<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;&#36;game_party.transfer_to_party_by_id(reserve_actor_id)<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;transfer_to_party_by_id(reserve_actor_id)<br />
#<br />
#&nbsp;&nbsp; Transfer Party Member to the Reserves by ID<br />
#&nbsp;&nbsp; -------------------------------------------<br />
#&nbsp;&nbsp; Assuming there is a system&nbsp;&nbsp;tracking what actors&nbsp;&nbsp;(by database ID)&nbsp;&nbsp;are in<br />
#&nbsp;&nbsp; main/active party,&nbsp;&nbsp;this command lets you remove the actor&nbsp;&nbsp;from the party<br />
#&nbsp;&nbsp; and places it into the reserves.<br />
#&nbsp;&nbsp; IT DOES NOT RECOGNIZE THE 'REQUIRED" ACTOR STATUS<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;&#36;game_party.transfer_to_reserve_by_id(party_actor_id)<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;transfer_to_reserve_by_id(party_actor_id)<br />
#<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# CHANGES FROM THE ORIGINAL<br />
#<br />
# This revision creates an RPGAdvReserve module where configuration values are<br />
# found.&nbsp;&nbsp;Originally, the script had only two values to adjust, but these were<br />
# actively situated&nbsp;&nbsp;within the script itself.&nbsp;&nbsp;And this would&nbsp;&nbsp;require you to<br />
# navigate through the script to find those values. The creation of the module<br />
# should make it easier to define what settings are desired.<br />
#<br />
# The system had values that were hardwired into the original script, be these<br />
# the color settings for Required Actor displays&nbsp;&nbsp;or the descriptive texts and<br />
# warning notices within.&nbsp;&nbsp;These have also been&nbsp;&nbsp;migrated to the configuration<br />
# section so you have no need to search within the scripts.<br />
#<br />
# Repairs had to be performed.&nbsp;&nbsp;You could previously exit&nbsp;&nbsp;the above described<br />
# Party Changing menu&nbsp;&nbsp;with a party containing no members at all.&nbsp;&nbsp;This effec-<br />
# tively would prevent&nbsp;&nbsp;the game to continue.&nbsp;&nbsp;The configuration section has a<br />
# switch to permit this, but not recommended.<br />
#<br />
# Likewise, there were issues&nbsp;&nbsp;with identifying required and reservist members<br />
# in the change party menu. RPG Advorate indeed created the Goldenrod Required<br />
# member color, but never applied its use in the menu. This has been corrected<br />
# while also creating a like color for reserve members appearing in the menus.<br />
#<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# COMPATABILITY / SCRIPT ATTACHED CODE AND REWRITES<br />
#<br />
# This script, when initially released, was not designed to paste the contents<br />
# in place,&nbsp;&nbsp;but instead instructed you&nbsp;&nbsp;to directly edit the default scripts.<br />
# At the time of release,&nbsp;&nbsp;there was little knowledge&nbsp;&nbsp;of the 'alias' property<br />
# which would allow the insertion of new code into methods. And this rework of<br />
# his script takes advantage of the alias technique where it was possible.<br />
# the default scripts. It was not released as a script to insert into <br />
#<br />
# Not all sections were able to benefit of the alias technique,&nbsp;&nbsp;those methods<br />
# still requiring their code rewritten/overwritten. However, said methods have<br />
# the rewritten sections identified.<br />
#<br />
# New Script Content:<br />
#&nbsp;&nbsp;* RPGAdvReserve&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: (New) Used to hold configuration values<br />
#&nbsp;&nbsp;* Game_Party&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : (Used by ChangeParty) Methods made to swap members<br />
#&nbsp;&nbsp;* Window_Base&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: (Used by ChangeParty) Makes color identified names<br />
#&nbsp;&nbsp;* Window_ChangeMain&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: (Used by ChangeParty) Draws the current party<br />
#&nbsp;&nbsp;* Window_ChangeReserve&nbsp;&nbsp; : (Used by ChangeParty) Draws the reserve party<br />
#&nbsp;&nbsp;* Window_PartyChangeInfo : (Used by ChangeParty) Draws recommended party size<br />
#&nbsp;&nbsp;* Interpreter&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: Shortcut script calls made for the system<br />
#&nbsp;&nbsp;* Scene_ChangeParty&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: Engine that switches party and reservists around<br />
#<br />
# Aliased Script Content:<br />
#&nbsp;&nbsp;* Game_Actor&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : Adds the required member status variable<br />
#&nbsp;&nbsp;* Game_Party&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : Makes the reserve array &amp; alters add/remove member<br />
#<br />
# Rewritten Script Content:<br />
#&nbsp;&nbsp;* Scene_Menu&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : update_status edited for reservist restrictions<br />
#&nbsp;&nbsp;* Scene_Skill&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: main method altered to allow access to reserves<br />
#&nbsp;&nbsp;* Scene_Equip&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: main method altered to allow access to reserves<br />
#&nbsp;&nbsp;* Scene_Battle&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : start_phase5 altered to allow reserve EXP gains<br />
#<br />
# All scripts that are rewrites of the default scripts have their new code in<br />
# defined areas&nbsp;&nbsp;beginning with&nbsp;&nbsp;either "Beginning of Replaced Code"&nbsp;&nbsp;or with<br />
# "Beginning of Inserted Code",&nbsp;&nbsp;and ending&nbsp;&nbsp;with a like commented statement.<br />
# In many cases, the original code is still available,&nbsp;&nbsp;but commented out for<br />
# end-user recognition.<br />
#<br />
#<br />
#==============================================================================<br />
<br />
<br />
<br />
module RPGAdvReserve<br />
<br />
<br />
&nbsp;&nbsp;# FEATURE SETTINGS<br />
&nbsp;&nbsp;# =======================================================================<br />
<br />
&nbsp;&nbsp;# If Reserve members appear in the menu status screen.<br />
&nbsp;&nbsp;&nbsp;&nbsp;MENU_STATUS = true<br />
<br />
&nbsp;&nbsp;# The percent of Exp reserve members get compared to active.<br />
&nbsp;&nbsp;&nbsp;&nbsp;EXP_PERCENT = 100<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;# (NEW) Allow party to be emptied by Party Changer (not recommended)<br />
&nbsp;&nbsp;# Original did not have a block to prevent emptying ... what a flaw!<br />
&nbsp;&nbsp;&nbsp;&nbsp;PERMIT_EMPTY = true<br />
<br />
<br />
&nbsp;&nbsp;# COLOR SETTINGS<br />
&nbsp;&nbsp;# =======================================================================<br />
<br />
&nbsp;&nbsp;# Color of actor name when required to be in party.<br />
&nbsp;&nbsp;# Default 216,150,20,255:&nbsp;&nbsp;Goldenrod<br />
&nbsp;&nbsp;&nbsp;&nbsp;COLOR_REQUIRED = Color.new(216, 150, 20, 255)<br />
<br />
&nbsp;&nbsp;# Color of actor name in menu status if a reserve member.<br />
&nbsp;&nbsp;# Default 152, 181, 100, 255:&nbsp;&nbsp;Olive<br />
&nbsp;&nbsp;&nbsp;&nbsp;COLOR_RESERVIST = Color.new(152, 181, 100, 255)<br />
<br />
<br />
&nbsp;&nbsp;# ACTOR WARNING MESSAGES<br />
&nbsp;&nbsp;# =======================================================================<br />
&nbsp;&nbsp;# A carte-blanch error if actor IDs values given are invalid<br />
&nbsp;&nbsp;&nbsp;&nbsp;ID_INVALID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= "ID given is invalid."<br />
&nbsp;&nbsp;# Define the text used to show at least one invalid party or reservist ID.<br />
&nbsp;&nbsp;&nbsp;&nbsp;SWAP_Invalid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= "Cannot swap members. One or both are invalid."<br />
&nbsp;&nbsp;# Define the text used to show the actor ID is not in the reservist party.<br />
&nbsp;&nbsp;&nbsp;&nbsp;TO_PARTY_Invalid&nbsp;&nbsp;&nbsp;&nbsp;= "Warning: Character is not in the reserve party."<br />
&nbsp;&nbsp;# Define the text used to show the party is full.<br />
&nbsp;&nbsp;&nbsp;&nbsp;TO_PARTY_Full&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = "Warning: Main party is full."<br />
&nbsp;&nbsp;# Define the text used to show the actor ID is not in the current party.<br />
&nbsp;&nbsp;&nbsp;&nbsp;TO_RESERVE_Invalid&nbsp;&nbsp;= "Warning: Character is not in the main party."<br />
<br />
<br />
&nbsp;&nbsp;# PARTY CHANGER MESSAGES<br />
&nbsp;&nbsp;# =======================================================================<br />
<br />
&nbsp;&nbsp;# Single-line text used to request a party be formed to default.<br />
&nbsp;&nbsp;&nbsp;&nbsp;INFO_Request1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = "Please form a party."<br />
&nbsp;&nbsp;# Dual-line text used to request a custom sized party. Must include {size}.<br />
&nbsp;&nbsp;&nbsp;&nbsp;INFO_Request2a&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= "Please form a party"<br />
&nbsp;&nbsp;&nbsp;&nbsp;INFO_Request2b&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= "of up to {size} members."<br />
&nbsp;&nbsp;# Warning to note max size setting is invalid.<br />
&nbsp;&nbsp;&nbsp;&nbsp;SIZE_Invalid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= "Warning: Invalid max size for party."<br />
&nbsp;&nbsp;# Text used to indicate empty position in party<br />
&nbsp;&nbsp;&nbsp;&nbsp;EMPTY&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = "- Empty -"<br />
&nbsp;&nbsp;&nbsp;&nbsp;DISALLOWED&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= "- Disallowed -"<br />
<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Game_Actor<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class handles the actor. It's used within the Game_Actors class<br />
#&nbsp;&nbsp;(&#36;game_actors) and refers to the Game_Party class (&#36;game_party).<br />
#==============================================================================<br />
<br />
class Game_Actor &lt; Game_Battler<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Public Instance Variables<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;attr_accessor :required&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # required party member flag<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Alias Listings<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;alias rpgadv_reserve_g_actor_setup setup<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Setup<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def setup(actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;rpgadv_reserve_g_actor_setup(actor_id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Run the original method<br />
&nbsp;&nbsp;&nbsp;&nbsp;@required = false&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Add the additional flag<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
#==============================================================================<br />
# ** Game_Party<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class handles the party. It includes information on amount of gold<br />
#&nbsp;&nbsp;and items. Refer to "&#36;game_party" for the instance of this class.<br />
#==============================================================================<br />
<br />
class Game_Party<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Public Instance Variables<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;attr_accessor :reserve_actors&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # reserve actors array<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Alias Listings<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;alias rpgadv_reserve_g_party_init initialize<br />
&nbsp;&nbsp;alias rpgadv_reserve_g_party_setup_add add_actor<br />
&nbsp;&nbsp;alias rpgadv_reserve_g_party_setup_remove remove_actor<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Object Initialization<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def initialize<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;rpgadv_reserve_g_party_init&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Run the original method<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors = []&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Add the additional array<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Add an Actor<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def add_actor(actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_actors[actor_id]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get actor&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @actors.size &gt;= 4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If the party is full<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if not @actors.include?(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If actor not in party&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if not @reserve_actors.include?(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If actor not in reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors.push(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Add actor to reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And exit method<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;rpgadv_reserve_g_party_setup_add(actor_id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Run the original method<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Remove Actor<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def remove_actor(actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors.delete(&#36;game_actors[actor_id])&nbsp;&nbsp;# Delete actor from reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;rpgadv_reserve_g_party_setup_remove(actor_id)&nbsp;&nbsp; # Run the original method<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Swap Actors<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor1 : actor<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor2 : actor<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def swap(actor1, actor2)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;error = false&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set no error<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if not @actors.include?(actor1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If actor1 not in party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;error = true&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set error <br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if not @reserve_actors.include?(actor2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If actor2 not in reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;error = true&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set error <br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if error&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If in error<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(RPGAdvReserve::SWAP_Invalid)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Display error message<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And exit method<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors.push(actor1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Add party actor to reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;@actors.delete(actor1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Delete actor from party<br />
&nbsp;&nbsp;&nbsp;&nbsp;add_actor(actor2.id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Add reserve actor to party<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors.delete(actor2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Delete from reserve party<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Transfer to Party<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor : actor<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def transfer_to_party(actor)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if not @reserve_actors.include?(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If actor not in reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(RPGAdvReserve::TO_PARTY_Invalid)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Display error message<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And exit method<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @actors.size == 4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If party is full<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(RPGAdvReserve::TO_PARTY_Full)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Display error message<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And exit method<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;add_actor(actor.id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Add reservist to party<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors.delete(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Delete from reserve party<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Transfer to Reserve<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor : actor<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def transfer_to_reserve(actor)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if not @actors.include?(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If actor not in party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(RPGAdvReserve::TO_RESERVE_Invalid)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Display error message<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And exit method<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;remove_actor(actor.id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Delete actor from party<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors.push(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Add party actor to reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Swap Actors by ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; party_actor_id&nbsp;&nbsp; : actor ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; reserve_actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def swap_by_id(party_actor_id, reserve_actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;return unless valid_id?(party_actor_id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if invalid actor ID<br />
&nbsp;&nbsp;&nbsp;&nbsp;return unless valid_id?(reserve_actor_id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if invalid reserve ID<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;actor1 = &#36;game_actors[party_actor_id]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get party member actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;actor2 = &#36;game_actors[reserve_actor_id]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get reserve member actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;swap(actor1, actor2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Swap the actors<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Transfer to Party by ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; reserve_actor : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def transfer_to_party_by_id(reserve_actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;return unless valid_id?(reserve_actor_id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if invalid reserve ID<br />
&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_actors[reserve_actor_id]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get reserve member actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;transfer_to_party(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Transfer actor to party<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Transfer to Reserve by ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; main_party_actor : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def transfer_to_reserve_by_id(party_actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;return unless valid_id?(party_actor_id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if invalid actor ID<br />
&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_actors[party_actor_id]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get party member actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;transfer_to_reserve(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Transfer actor to reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Test for valid values above 0<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def valid_id?(actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;test = true&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Assume passes<br />
&nbsp;&nbsp;&nbsp;&nbsp;test = false if actor_id.nil?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Fail if nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;test = false unless actor_id.is_a?(Numeric)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Fail if not numeric<br />
&nbsp;&nbsp;&nbsp;&nbsp;test = false if actor_id &lt;= 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if invalid value<br />
&nbsp;&nbsp;&nbsp;&nbsp;return true&nbsp;&nbsp;if test&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Exit true if passes<br />
&nbsp;&nbsp;&nbsp;&nbsp;print(RPGAdvReserve::ID_INVALID)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Render ID alert<br />
&nbsp;&nbsp;&nbsp;&nbsp;return false&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Exit method false<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Window_Base<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class is for all in-game windows.<br />
#==============================================================================<br />
<br />
class Window_Base &lt; Window<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Required Color (Goldenrod)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def required_color<br />
&nbsp;&nbsp;&nbsp;&nbsp;return RPGAdvReserve::COLOR_REQUIRED<br />
&nbsp;&nbsp;end<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Required Color (Olive)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def reservist_color<br />
&nbsp;&nbsp;&nbsp;&nbsp;return RPGAdvReserve::COLOR_RESERVIST<br />
&nbsp;&nbsp;end<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Draw Required Name<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor : actor<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; x&nbsp;&nbsp;&nbsp;&nbsp; : draw spot x-coordinate<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; y&nbsp;&nbsp;&nbsp;&nbsp; : draw spot y-coordinate<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def draw_actor_required(actor, x, y)<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.font.color = required_color<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.draw_text(x, y, 120, 32, actor.name)<br />
&nbsp;&nbsp;end&nbsp;&nbsp;<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Draw Reservist Name<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor : actor<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; x&nbsp;&nbsp;&nbsp;&nbsp; : draw spot x-coordinate<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; y&nbsp;&nbsp;&nbsp;&nbsp; : draw spot y-coordinate<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def draw_actor_reservist(actor, x, y)<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.font.color = reservist_color<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.draw_text(x, y, 120, 32, actor.name)<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Window_MenuStatus<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This window displays party member status on the menu screen.<br />
#==============================================================================<br />
<br />
class Window_MenuStatus &lt; Window_Selectable<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Refresh<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.dispose&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Erase contents at start<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_max = &#36;game_party.actors.size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set max size by party<br />
&nbsp;&nbsp;&nbsp;&nbsp;if RPGAdvReserve::MENU_STATUS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If Switch engaged&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@item_max += &#36;game_party.reserve_actors.size&nbsp;&nbsp;&nbsp;&nbsp;# Add reserves to size<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;wd&nbsp;&nbsp;&nbsp;&nbsp;= width - 32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set width<br />
&nbsp;&nbsp;&nbsp;&nbsp;ht&nbsp;&nbsp;&nbsp;&nbsp;= @item_max * 120 - 32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set height by max size<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents = Bitmap.new(wd, ht)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set contents<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.clear&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # And make contents clear<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;actor_array = []&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# create actor array<br />
&nbsp;&nbsp;&nbsp;&nbsp;for actor in &#36;game_party.actors&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Cycle through party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor_array.push(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # and push actors in array<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if RPGAdvReserve::MENU_STATUS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If Switch engaged<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for actor in &#36;game_party.reserve_actors&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Cycle through reserves<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor_array.push(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # and push actors in array<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;party_idx_max = &#36;game_party.actors.size - 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get last ID for party<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;for id in 0...@item_max&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Cycle total actor size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x = 64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set X Coordinate<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y = id * 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set Y coord by counter<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor = actor_array[id]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get actor by counter<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_graphic(actor, x - 40, y + 80)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw character<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_name(actor, x, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Draw name<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if id &gt; party_idx_max&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If counter past party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_reservist(actor, x, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw reservist name<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_class(actor, x + 144, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw class<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_level(actor, x, y + 32)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Draw level<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_state(actor, x + 90, y + 32)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw state<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_exp(actor, x, y + 64)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Draw exp<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_hp(actor, x + 236, y + 32)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw hp<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_sp(actor, x + 236, y + 64)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw sp<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end&nbsp;&nbsp;<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Cursor Rectangle Update<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_cursor_rect<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @index &lt; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If no valid index <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.cursor_rect.empty&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Remove cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y&nbsp;&nbsp; = @index * 116 - self.oy&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get y-position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wd&nbsp;&nbsp;= self.width - 32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get width <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.cursor_rect.set(0, y, wd, 96)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And set cursor dimension<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if self.cursor_rect.y &lt; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If position less than 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.oy -= 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Reduce origin <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;refresh&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Refresh menu contents<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_cursor_rect&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And redraw cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if self.cursor_rect.y &gt; 348&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If position over 348<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.oy += 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Increase origin<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;refresh&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Refresh menu contents<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_cursor_rect&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And redraw cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Window_ChangeMain<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This window displays the current party members in the Party Changer scene<br />
#==============================================================================<br />
<br />
class Window_ChangeMain &lt; Window_Selectable<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Object Initialization<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def initialize(max_size=3)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;super(0, 0, 320, 480)<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents = Bitmap.new(width - 32, height - 32)<br />
&nbsp;&nbsp;&nbsp;&nbsp;refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.active = false<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.index&nbsp;&nbsp;= -1<br />
&nbsp;&nbsp;&nbsp;&nbsp;@max_size&nbsp;&nbsp; = max_size<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Refresh<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.clear&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Make contents clear<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_max = 4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set max&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;for idx in 0..3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Cycle through party max<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x = 64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set text x coordinates<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y = idx * 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set Y coords by counter<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.actors[idx] != nil&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If a valid actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_party.actors[idx]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if idx &gt; @max_size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If space above max size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;text = RPGAdvReserve::DISALLOWED&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set disallowed text<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;text = RPGAdvReserve::EMPTY&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set empty space text<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.contents.draw_text(0,y+32,288,32,text,1) # Display the text<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;next&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And skip to next actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_graphic(actor, x - 40, y + 80)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw Graphic<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_name(actor, x, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Draw name<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if actor.required == true&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If a required actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_required(actor, x, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Redraw Required name<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_level(actor, x + 160, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw Level<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_hp(actor, x, y + 32)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw HP<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_sp(actor, x, y + 64)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw SP<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Cursor Rectangle Update<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_cursor_rect<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @index &lt; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If no valid index <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.cursor_rect.empty&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Remove cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y&nbsp;&nbsp; = @index * 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get y-position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wd&nbsp;&nbsp;= self.width - 32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get width <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.cursor_rect.set(0, y, wd, 96)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And set cursor dimension<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Window_ChangeReserve<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This window displays the reserve party members in the Party Changer scene<br />
#==============================================================================<br />
<br />
class Window_ChangeReserve &lt; Window_Selectable<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Object Initialization<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def initialize<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;super(320, 0, 320, 360)<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents = Bitmap.new(width - 32, height - 32)<br />
&nbsp;&nbsp;&nbsp;&nbsp;refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.active = false<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.index = -1<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Refresh<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_max = &#36;game_party.reserve_actors.size + 1&nbsp;&nbsp; # Get reservist party max<br />
&nbsp;&nbsp;&nbsp;&nbsp;size&nbsp;&nbsp;= 96 + @item_max * 96 - 32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set reservist area size<br />
&nbsp;&nbsp;&nbsp;&nbsp;size&nbsp;&nbsp;= 328 if size &lt; 328&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Limit size to window<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.dispose&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Erase contents area<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents = Bitmap.new(width - 32, size)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set contents<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.clear&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # And make contents clear<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;for idx in 0...&#36;game_party.reserve_actors.size&nbsp;&nbsp;&nbsp;&nbsp;# Cycle through reservists<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x = 64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set text x coordinates<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y = idx * 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set Y coords by counter<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_party.reserve_actors[idx]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get reservist actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_graphic(actor, x - 40, y + 80)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw character<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_name(actor, x, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Draw name<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_level(actor, x + 160, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw Level<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_hp(actor, x, y + 32)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw HP<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_sp(actor, x, y + 64)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw SP<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Cursor Rectangle Update<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_cursor_rect<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @index &lt; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If no valid index <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.cursor_rect.empty&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Remove cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y&nbsp;&nbsp; = @index * 116 - self.oy&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get y-position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wd&nbsp;&nbsp;= self.width - 32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get width <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.cursor_rect.set(0, y, wd, 96)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And set cursor dimension<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if self.cursor_rect.y &lt; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If position less than 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.oy -= 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Reduce origin <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;refresh&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Refresh menu contents<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_cursor_rect&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And redraw cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if self.cursor_rect.y &gt; 232&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If position over 232<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.oy += 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Increase origin<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;refresh&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Refresh menu contents<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_cursor_rect&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And redraw cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
#==============================================================================<br />
# ** Window_PartyChangeInfo<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This window displays help information in the Party Changer scene<br />
#==============================================================================<br />
<br />
class Window_PartyChangeInfo &lt; Window_Base<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Public Instance Variables<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;attr_reader&nbsp;&nbsp; :max_size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # maximum party size<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Object Initialization<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def initialize(max_size)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;super(320, 360, 320, 120)<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents = Bitmap.new(width - 32, height - 32)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@max_size = max_size<br />
&nbsp;&nbsp;&nbsp;&nbsp;refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Refresh<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.clear&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # And make contents clear<br />
&nbsp;&nbsp;&nbsp;&nbsp;text1 = RPGAdvReserve::INFO_Request1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get Full Party Size note<br />
&nbsp;&nbsp;&nbsp;&nbsp;text2 = RPGAdvReserve::INFO_Request2a&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get 1st Set party note<br />
&nbsp;&nbsp;&nbsp;&nbsp;tempt = RPGAdvReserve::INFO_Request2b&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get 2nd Set party note<br />
&nbsp;&nbsp;&nbsp;&nbsp;text3 = tempt.gsub(/{size}/) {(@max_size.to_s) }&nbsp;&nbsp;# Replace string with size<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @max_size == 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If max size default<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.contents.draw_text(4, 0, 240, 32, text1)&nbsp;&nbsp; # Show full party note<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @max_size &gt; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If alternate size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.contents.draw_text(4, 0, 240, 32, text2)&nbsp;&nbsp; # Show 1st party note<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.contents.draw_text(4, 32, 240, 32, text3)&nbsp;&nbsp;# Show 2nd party note<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Interpreter<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This interpreter runs event commands. This class is used within the<br />
#&nbsp;&nbsp;Game_System class and the Game_Event class.<br />
#==============================================================================<br />
<br />
class Interpreter<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Swap Actors by database ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; party_actor_id&nbsp;&nbsp; : actor ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; reserve_actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def swap_by_id(party_actor_id=1, reserve_actor_id=1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.swap_by_id(party_actor_id, reserve_actor_id)<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Transfer to Party by database ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; reserve_actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def transfer_to_party_by_id(reserve_actor_id=1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.transfer_to_party_by_id(reserve_actor_id)<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Transfer to Reserve by database ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; party_actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def transfer_to_reserve_by_id(party_actor_id=1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.transfer_to_reserve_by_id(party_actor_id)<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Set required actor flag<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor_id : actor ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; flag&nbsp;&nbsp;&nbsp;&nbsp; : boolean value (true/false)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def required_actor(actor_id=0, flag=true)<br />
&nbsp;&nbsp;&nbsp;&nbsp;return if actor_id.nil?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;return unless value.is_a?(Numeric)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Exit if not numeric<br />
&nbsp;&nbsp;&nbsp;&nbsp;return if actor_id &lt;= 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if invalid value<br />
&nbsp;&nbsp;&nbsp;&nbsp;return if &#36;game_party.actors[actor_id] == nil&nbsp;&nbsp;&nbsp;&nbsp; # Exit if no actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;return unless (flag == true || flag == false)&nbsp;&nbsp;&nbsp;&nbsp; # Exit if not boolean<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.actors[actor_id].required = flag&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Apply the flag<br />
&nbsp;&nbsp;end<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Party Changer Menu<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; max_size : party size maximum<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def change_party(max_size=0)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;scene = Scene_ChangeParty.new(max_size)<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Scene_Menu<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class performs menu screen processing.<br />
#==============================================================================<br />
<br />
class Scene_Menu<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Frame Update (when status window is active)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_status<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If B button was pressed<br />
&nbsp;&nbsp;&nbsp;&nbsp;if Input.trigger?(Input::B)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play cancel SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.cancel_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Make command window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@command_window.active = true<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@status_window.active = false<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@status_window.index = -1<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If C button was pressed<br />
&nbsp;&nbsp;&nbsp;&nbsp;if Input.trigger?(Input::C)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Branch by command window cursor position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case @command_window.index<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;when 1&nbsp;&nbsp;# skill<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;## If this actor's action limit is 2 or more<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#if &#36;game_party.actors[@status_window.index].restriction &gt;= 2<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# * Beginning of Replaced Code<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#--------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Check actor restriction if index points to active party member<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if @status_window.index &lt; &#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;check_actor = &#36;game_party.actors[@status_window.index]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Or check actor restriction for reserve party member<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;size = &#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;check_actor = &#36;game_party.reserve_actors[@status_window.index - size]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If this actor's action limit is 2 or more<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if check_actor.restriction &gt;= 2<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#--------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# * Replaced Code End<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play buzzer SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Switch to skill screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;scene = Scene_Skill.new(@status_window.index)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;when 2&nbsp;&nbsp;# equipment<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Switch to equipment screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;scene = Scene_Equip.new(@status_window.index)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;when 3&nbsp;&nbsp;# status<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Switch to status screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;scene = Scene_Status.new(@status_window.index)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Scene_Skill<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class performs skill screen processing.<br />
#==============================================================================<br />
<br />
class Scene_Skill<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Main Processing<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def main&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;## Get actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;#@actor = &#36;game_party.actors[@actor_index]<br />
&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;# * Beginning of Replaced Code<br />
&nbsp;&nbsp;&nbsp;&nbsp;#------------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If actor index within party size<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @actor_index &lt; &#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get actor from party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor = &#36;game_party.actors[@actor_index]<br />
&nbsp;&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise get actor from reserve party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;idx = @actor_index - &#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor = &#36;game_party.reserve_actors[idx]<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#------------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;# * Replaced Code End<br />
&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Make help window, status window, and skill window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@help_window = Window_Help.new<br />
&nbsp;&nbsp;&nbsp;&nbsp;@status_window = Window_SkillStatus.new(@actor)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@skill_window = Window_Skill.new(@actor)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Associate help window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@skill_window.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Make target window (set to invisible / inactive)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@target_window = Window_Target.new<br />
&nbsp;&nbsp;&nbsp;&nbsp;@target_window.visible = false<br />
&nbsp;&nbsp;&nbsp;&nbsp;@target_window.active = false<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Execute transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;Graphics.transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Main loop<br />
&nbsp;&nbsp;&nbsp;&nbsp;loop do<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Update game screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Graphics.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Update input information<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Input.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Frame update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Abort loop if screen is changed<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;scene != self<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Prepare for transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;Graphics.freeze<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Dispose of windows<br />
&nbsp;&nbsp;&nbsp;&nbsp;@help_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@status_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@skill_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@target_window.dispose<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Scene_Equip<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class performs equipment screen processing.<br />
#==============================================================================<br />
<br />
class Scene_Equip<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Main Processing<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def main&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;## Get actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;#@actor = &#36;game_party.actors[@actor_index]<br />
&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;# * Beginning of Replaced Code<br />
&nbsp;&nbsp;&nbsp;&nbsp;#------------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If actor index within party size<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @actor_index &lt; &#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get actor from party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor = &#36;game_party.actors[@actor_index]<br />
&nbsp;&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise get actor from reserve party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;idx = @actor_index - &#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor = &#36;game_party.reserve_actors[idx]<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#------------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;# * Replaced Code End<br />
&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Make windows<br />
&nbsp;&nbsp;&nbsp;&nbsp;@help_window = Window_Help.new<br />
&nbsp;&nbsp;&nbsp;&nbsp;@left_window = Window_EquipLeft.new(@actor)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@right_window = Window_EquipRight.new(@actor)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window1 = Window_EquipItem.new(@actor, 0)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window2 = Window_EquipItem.new(@actor, 1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window3 = Window_EquipItem.new(@actor, 2)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window4 = Window_EquipItem.new(@actor, 3)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window5 = Window_EquipItem.new(@actor, 4)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Associate help window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@right_window.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window1.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window2.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window3.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window4.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window5.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Set cursor position<br />
&nbsp;&nbsp;&nbsp;&nbsp;@right_window.index = @equip_index<br />
&nbsp;&nbsp;&nbsp;&nbsp;refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Execute transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;Graphics.transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Main loop<br />
&nbsp;&nbsp;&nbsp;&nbsp;loop do<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Update game screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Graphics.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Update input information<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Input.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Frame update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Abort loop if screen is changed<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;scene != self<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Prepare for transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;Graphics.freeze<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Dispose of windows<br />
&nbsp;&nbsp;&nbsp;&nbsp;@help_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@left_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@right_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window1.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window2.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window3.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window4.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window5.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Scene_Battle<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class performs battle screen processing.<br />
#==============================================================================<br />
<br />
class Scene_Battle<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Start After Battle Phase<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def start_phase5<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Shift to phase 5<br />
&nbsp;&nbsp;&nbsp;&nbsp;@phase = 5<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Play battle end ME<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.me_play(&#36;game_system.battle_end_me)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Return to BGM before battle started<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.bgm_play(&#36;game_temp.map_bgm)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Initialize EXP, amount of gold, and treasure<br />
&nbsp;&nbsp;&nbsp;&nbsp;exp = 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;gold = 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;treasures = []<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Loop<br />
&nbsp;&nbsp;&nbsp;&nbsp;for enemy in &#36;game_troop.enemies<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If enemy is not hidden<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unless enemy.hidden<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Add EXP and amount of gold obtained<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exp += enemy.exp<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gold += enemy.gold<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Determine if treasure appears<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if rand(100) &lt; enemy.treasure_prob<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if enemy.item_id &gt; 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;treasures.push(&#36;data_items[enemy.item_id])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if enemy.weapon_id &gt; 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;treasures.push(&#36;data_weapons[enemy.weapon_id])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if enemy.armor_id &gt; 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;treasures.push(&#36;data_armors[enemy.armor_id])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Treasure is limited to a maximum of 6 items<br />
&nbsp;&nbsp;&nbsp;&nbsp;treasures = treasures[0..5]<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Obtaining EXP<br />
&nbsp;&nbsp;&nbsp;&nbsp;for i in 0...&#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_party.actors[i]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if actor.cant_get_exp? == false<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;last_level = actor.level<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor.exp += exp<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if actor.level &gt; last_level<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@status_window.level_up(i)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;# * Beginning of Inserted Code<br />
&nbsp;&nbsp;&nbsp;&nbsp;#------------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Obtain Reserve Character Exp Percentage<br />
&nbsp;&nbsp;&nbsp;&nbsp;perc = RPGAdvReserve::EXP_PERCENT<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Reserve Characters Obtaining EXP&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;for i in 0...&#36;game_party.reserve_actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_party.reserve_actors[i]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if actor.cant_get_exp? == false<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor.exp += exp * perc / 100<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#------------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;# * Inserted&nbsp;&nbsp;Code End<br />
&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Obtaining gold<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.gain_gold(gold)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Obtaining treasure<br />
&nbsp;&nbsp;&nbsp;&nbsp;for item in treasures<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case item<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;when RPG::Item<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.gain_item(item.id, 1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;when RPG::Weapon<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.gain_weapon(item.id, 1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;when RPG::Armor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.gain_armor(item.id, 1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Make battle result window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@result_window = Window_BattleResult.new(exp, gold, treasures)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Set wait count<br />
&nbsp;&nbsp;&nbsp;&nbsp;@phase5_wait_count = 100<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Scene_ChangeParty<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class performs party management processing.<br />
#==============================================================================<br />
<br />
class Scene_ChangeParty<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Object Initialization<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; max_size : max size of party<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def initialize(max_size=0)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Obtain text warning<br />
&nbsp;&nbsp;&nbsp;&nbsp;text = RPGAdvReserve::SIZE_Invalid<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Set message and exit If below 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;if max_size &lt; 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(text)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Set message and exit if above standard limit of 4<br />
&nbsp;&nbsp;&nbsp;&nbsp;if max_size &gt; 4<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(text)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;end&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Set max size based on index positions (0-3) rather than (1-4)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@max_size = max_size<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Main Processing<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def main<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Define party max for Change Party menu (0-3)<br />
&nbsp;&nbsp;&nbsp;&nbsp;party_max&nbsp;&nbsp; = @max_size<br />
&nbsp;&nbsp;&nbsp;&nbsp;party_max&nbsp;&nbsp; = 4 if party_max == 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;party_max&nbsp;&nbsp; -= 1<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Make windows<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window&nbsp;&nbsp; = Window_ChangeMain.new(party_max)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window = Window_ChangeReserve.new<br />
&nbsp;&nbsp;&nbsp;&nbsp;@info_window&nbsp;&nbsp;&nbsp;&nbsp;= Window_PartyChangeInfo.new(@max_size)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Set window values<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window.index&nbsp;&nbsp;&nbsp;&nbsp; = 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.index&nbsp;&nbsp; = -1<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window.active&nbsp;&nbsp;&nbsp;&nbsp;= true<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.active&nbsp;&nbsp;= false<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Clear memorized actors<br />
&nbsp;&nbsp;&nbsp;&nbsp;@actor1 = nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;@actor2 = nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Execute transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;Graphics.transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Main loop<br />
&nbsp;&nbsp;&nbsp;&nbsp;loop do<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Update game screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Graphics.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Update input information<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Input.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Frame update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Abort loop if screen is changed<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;scene != self<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Prepare for transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;Graphics.freeze<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Dispose of windows<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@info_window.dispose<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Main Processing<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Update windows&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;@info_window.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If party window is active: call update_party<br />
&nbsp;&nbsp;&nbsp;&nbsp;return update_party&nbsp;&nbsp;&nbsp;&nbsp; if @party_window.active<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If reserve window is active: call update_reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;return update_reserve&nbsp;&nbsp; if @reserve_window.active<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Frame Update (when updating the party window)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_party<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If B button was pressed<br />
&nbsp;&nbsp;&nbsp;&nbsp;if Input.trigger?(Input::B)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If party is empty and not permitted to empty<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.actors.size == 0 &amp;&amp; !RPGAdvReserve::PERMIT_EMPTY<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play buzzer SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If party is larger than maximum size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;val = @max_size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;val = 4 if val == 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.actors.size &gt; val<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play buzzer SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play cancel SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.cancel_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Switch to map screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;scene = Scene_Map.new<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If C button was pressed<br />
&nbsp;&nbsp;&nbsp;&nbsp;if Input.trigger?(Input::C)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set party window cursor position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;place = @party_window.index<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# if cursor goes beyond party size and no one in that spot<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if @max_size &gt; 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if place &gt;= @max_size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.actors[place].nil?<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play buzzer SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If party member exists at cursor position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.actors[place] != nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And if party is required (cannot remove)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.actors[place].required<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play buzzer SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If there are no reserve party members<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.reserve_actors.size == 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Transfer the actor to the reserve party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.transfer_to_reserve(&#36;game_party.actors[place])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Refresh both windows<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@party_window.refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If reserve party members exist<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.reserve_actors.size &gt; 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Make reserve window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@party_window.active&nbsp;&nbsp;&nbsp;&nbsp;= false<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.index&nbsp;&nbsp; = 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.active&nbsp;&nbsp;= true<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Memorize party member<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor1 = &#36;game_party.actors[place]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Frame Update (when updating the reserve window)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If B button was pressed<br />
&nbsp;&nbsp;&nbsp;&nbsp;if Input.trigger?(Input::B)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play cancel SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.cancel_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Make party window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_activate_party_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If C button was pressed<br />
&nbsp;&nbsp;&nbsp;&nbsp;if Input.trigger?(Input::C)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set reserve window cursor position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;place = @reserve_window.index<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# if cursor goes beyond reserve party size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if place == &#36;game_party.reserve_actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If no memorized party actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if @actor1 == nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play buzzer SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Transfer stored party member to reserves<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.transfer_to_reserve(@actor1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Make party window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_activate_party_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If there is no stored party actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if @actor1 == nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Memorize reserve member<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor2 = &#36;game_party.reserve_actors[place]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Transfer reserve member to party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.transfer_to_party(@actor2)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Make party window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_activate_party_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If there a stored party actor exists<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Memorize reserve member<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor2 = &#36;game_party.reserve_actors[place]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Swap both party and reserve party members<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.swap(@actor1, @actor2)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Make party window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_activate_party_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Frame Update (when making the party window active)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_activate_party_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Make party window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.index&nbsp;&nbsp; = -1<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.active&nbsp;&nbsp;= false<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window.active&nbsp;&nbsp;&nbsp;&nbsp;= true<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window.refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end</code></div></div></div>
		</div>
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Instructions</span></span><br />
Place below Scene_Debug and above Main.  It rewrites methods in four Scene_ classes, so it should be high in your list of custom scripts. Be aware it may conflict with the menu, skill, equip and battle treasure systems.<br />
<br />
Detailed instructions are included in the script itself.<br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Compatibility</span></span><br />
As noted, there are major rewrites.  Be warned.<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Credits and Thanks</span></span><br />
RPGAdvocate for the original version.<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Terms and Conditions</span></span><br />
There were no terms of use listed at RPG Advocate's site, Phylomortis.com. However, I would think it would be prudent to give him credit for the work.]]></description>
			<content:encoded><![CDATA[<div align="center"><span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Reserve Party Tools</span></span><br />
<span style="font-size: medium;" class="mycode_size">Original Version by RPG Advocate 4/12/2005<br />
Edit and repairs by DerVVulfman</span></div>
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Introduction</span></span><br />
<br />
This script enables support  for a "reserve" party of arbitrary size.  These characters don't fight in battle.  You are able to remove party members  and place them within the reserves by use of a new menu designed in the system. And adding new party members (with "Change Party Member") while the party is full will add them to the reserves.<br />
<br />
The original version required rewrites everywhere and expected the end-user to perform direct edits to the default scripts.  This version fixes some errors and oversights . And while still containing some direct alterations of default scripts, has those edited areas clearly marked for reference.<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Script</span></span><br />
<div class="tborder">
  			<div class="thead" style="padding:4px; margin:1px;"><input type="button" class="button" value="+" style="font-family:Monospace; padding:0px" onclick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].style.display=='none'){ this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='';this.value='-';} else {this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='none';this.value='+';}"/> The Script</div>
  			<div class="trow2" style="display:none; padding:4px; margin:1px;"><div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>#==============================================================================<br />
# Reserve Party Tools<br />
#------------------------------------------------------------------------------<br />
# by RPG Advocate 4/12/2005<br />
# Edit and repairs by DerVVulfman 6/27/2026<br />
# RGSS / RPGMaker XP<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# THE RESERVE PARTY MENU<br />
#<br />
# This script enables support&nbsp;&nbsp;for a "reserve" party of arbitrary size.&nbsp;&nbsp;These<br />
# characters don't fight in battle. If you want to give the player the ability<br />
# to switch characters between the party and reserve party,&nbsp;&nbsp;use either script<br />
# call shown below:<br />
#<br />
# *&nbsp;&nbsp;&#36;scene = Scene_PartyChange.new(value)<br />
# *&nbsp;&nbsp;change_party(value)<br />
#<br />
# The 'value' represents&nbsp;&nbsp;the maximun number of members you want in the party,<br />
# and can be left empty if using the default party size of '4'. You may set it<br />
# the range from 0-4, with 0 indicating full default party size of '4'. Values<br />
# beyond that range are invalid.<br />
#<br />
# *&nbsp;&nbsp;&#36;scene = Scene_PartyChange.new<br />
# *&nbsp;&nbsp;change_party<br />
#<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# RESERVIST BATTLE EXPERIENCE<br />
#<br />
# By default, inactive party members gain experience at the same rate as active<br />
# members. To change this,&nbsp;&nbsp;edit the EXP_PERCENT constant&nbsp;&nbsp;in the RPGAdvReserve<br />
# module to the percentage of experience you want the inactive party to gain.<br />
#<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# REQUIRED / PERMANENT PARTY MEMBERS<br />
#<br />
# This script supports required party members, actors that have been classified<br />
# as necessary within the party&nbsp;&nbsp;and cannot be removed.&nbsp;&nbsp;To make a party member<br />
# required or remove its required status, you may use either script calls:<br />
#<br />
# *&nbsp;&nbsp;&#36;game_party.actors[actor_id].required = true/false<br />
# *&nbsp;&nbsp;required_actor(actor_id, true/false)<br />
#<br />
# Both calls requests you&nbsp;&nbsp;to set a value of true,&nbsp;&nbsp;or false in order to remove<br />
# the required status.&nbsp;&nbsp;And within the Change Member menu,&nbsp;&nbsp;these party members<br />
# will appear with a predefined color in their names, default to Goldenrod.<br />
#<br />
# You should only make a character already in the party required. <br />
#<br />
# Making a reserve member 'required' will not work.<br />
#<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# CHANGING PARTY MEMBERS<br />
#<br />
# This script changes how the "Change Party Members" event command works.<br />
#<br />
# If you try to add a charater to the party when the party is full, that char-<br />
# acter will automatically be added to the reserve party.&nbsp;&nbsp;And if you remove a<br />
# party member, that character will be removed if they are in either the party<br />
# or the reserve party. However, it only recognizes a 4-party system when this<br />
# is applied, and does not recognize alternate party sizes.<br />
#<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# SCRIPT CALLS<br />
#<br />
# Initially,&nbsp;&nbsp;the only script calls noted were lenghty&nbsp;&nbsp;and direct commands to<br />
# the Game_Party class&nbsp;&nbsp;or direct calls&nbsp;&nbsp;to &#36;scene itself.&nbsp;&nbsp;Other script calls<br />
# were possible but not given. Here, we view all relevant script calls showing<br />
# both original and newer quick commands found in the Interpreter class:<br />
#<br />
#&nbsp;&nbsp; The Menu Command<br />
#&nbsp;&nbsp; ----------------<br />
#&nbsp;&nbsp; Used to bring up the actual Party/Reservist changing menu<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;&#36;scene = Scene_ChangeParty.new(max_size)<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;change_party(max_size)<br />
#<br />
#&nbsp;&nbsp; Set Actor Required Status<br />
#&nbsp;&nbsp; -------------------------<br />
#&nbsp;&nbsp; Used to define an in-party&nbsp;&nbsp;(not a reservist member)&nbsp;&nbsp;as a fixed member of<br />
#&nbsp;&nbsp; the current party.&nbsp;&nbsp;The 'actor_id' value is from the database ID.&nbsp;&nbsp;And the<br />
#&nbsp;&nbsp; 'flag' value is either true or false.<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;&#36;game_party.actors[actor_id].required = flag<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;required_actor(actor_id, flag)<br />
#<br />
#&nbsp;&nbsp; Swap Actors by database ID<br />
#&nbsp;&nbsp; --------------------------<br />
#&nbsp;&nbsp; Assuming there is a system&nbsp;&nbsp;tracking what actors&nbsp;&nbsp;(by database ID)&nbsp;&nbsp;are in<br />
#&nbsp;&nbsp; both the party and reserve party, this command lets you exchange one actor<br />
#&nbsp;&nbsp; from the party with one from the reserves.<br />
#&nbsp;&nbsp; IT DOES NOT RECOGNIZE THE 'REQUIRED" ACTOR STATUS<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;&#36;game_party.swap_by_id(party_actor_id, reserve_actor_id)<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;swap_by_id(party_actor_id, reserve_actor_id)<br />
#<br />
#&nbsp;&nbsp; Transfer Reservist to the Party by ID<br />
#&nbsp;&nbsp; -------------------------------------<br />
#&nbsp;&nbsp; Assuming there is a system&nbsp;&nbsp;tracking what actors&nbsp;&nbsp;(by database ID)&nbsp;&nbsp;are in<br />
#&nbsp;&nbsp; the reserve party, this command lets you remove the actor from the reserve<br />
#&nbsp;&nbsp; party and places it into the main/active party.<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;&#36;game_party.transfer_to_party_by_id(reserve_actor_id)<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;transfer_to_party_by_id(reserve_actor_id)<br />
#<br />
#&nbsp;&nbsp; Transfer Party Member to the Reserves by ID<br />
#&nbsp;&nbsp; -------------------------------------------<br />
#&nbsp;&nbsp; Assuming there is a system&nbsp;&nbsp;tracking what actors&nbsp;&nbsp;(by database ID)&nbsp;&nbsp;are in<br />
#&nbsp;&nbsp; main/active party,&nbsp;&nbsp;this command lets you remove the actor&nbsp;&nbsp;from the party<br />
#&nbsp;&nbsp; and places it into the reserves.<br />
#&nbsp;&nbsp; IT DOES NOT RECOGNIZE THE 'REQUIRED" ACTOR STATUS<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;&#36;game_party.transfer_to_reserve_by_id(party_actor_id)<br />
#&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;transfer_to_reserve_by_id(party_actor_id)<br />
#<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# CHANGES FROM THE ORIGINAL<br />
#<br />
# This revision creates an RPGAdvReserve module where configuration values are<br />
# found.&nbsp;&nbsp;Originally, the script had only two values to adjust, but these were<br />
# actively situated&nbsp;&nbsp;within the script itself.&nbsp;&nbsp;And this would&nbsp;&nbsp;require you to<br />
# navigate through the script to find those values. The creation of the module<br />
# should make it easier to define what settings are desired.<br />
#<br />
# The system had values that were hardwired into the original script, be these<br />
# the color settings for Required Actor displays&nbsp;&nbsp;or the descriptive texts and<br />
# warning notices within.&nbsp;&nbsp;These have also been&nbsp;&nbsp;migrated to the configuration<br />
# section so you have no need to search within the scripts.<br />
#<br />
# Repairs had to be performed.&nbsp;&nbsp;You could previously exit&nbsp;&nbsp;the above described<br />
# Party Changing menu&nbsp;&nbsp;with a party containing no members at all.&nbsp;&nbsp;This effec-<br />
# tively would prevent&nbsp;&nbsp;the game to continue.&nbsp;&nbsp;The configuration section has a<br />
# switch to permit this, but not recommended.<br />
#<br />
# Likewise, there were issues&nbsp;&nbsp;with identifying required and reservist members<br />
# in the change party menu. RPG Advorate indeed created the Goldenrod Required<br />
# member color, but never applied its use in the menu. This has been corrected<br />
# while also creating a like color for reserve members appearing in the menus.<br />
#<br />
#<br />
#------------------------------------------------------------------------------<br />
#<br />
# COMPATABILITY / SCRIPT ATTACHED CODE AND REWRITES<br />
#<br />
# This script, when initially released, was not designed to paste the contents<br />
# in place,&nbsp;&nbsp;but instead instructed you&nbsp;&nbsp;to directly edit the default scripts.<br />
# At the time of release,&nbsp;&nbsp;there was little knowledge&nbsp;&nbsp;of the 'alias' property<br />
# which would allow the insertion of new code into methods. And this rework of<br />
# his script takes advantage of the alias technique where it was possible.<br />
# the default scripts. It was not released as a script to insert into <br />
#<br />
# Not all sections were able to benefit of the alias technique,&nbsp;&nbsp;those methods<br />
# still requiring their code rewritten/overwritten. However, said methods have<br />
# the rewritten sections identified.<br />
#<br />
# New Script Content:<br />
#&nbsp;&nbsp;* RPGAdvReserve&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: (New) Used to hold configuration values<br />
#&nbsp;&nbsp;* Game_Party&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : (Used by ChangeParty) Methods made to swap members<br />
#&nbsp;&nbsp;* Window_Base&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: (Used by ChangeParty) Makes color identified names<br />
#&nbsp;&nbsp;* Window_ChangeMain&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: (Used by ChangeParty) Draws the current party<br />
#&nbsp;&nbsp;* Window_ChangeReserve&nbsp;&nbsp; : (Used by ChangeParty) Draws the reserve party<br />
#&nbsp;&nbsp;* Window_PartyChangeInfo : (Used by ChangeParty) Draws recommended party size<br />
#&nbsp;&nbsp;* Interpreter&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: Shortcut script calls made for the system<br />
#&nbsp;&nbsp;* Scene_ChangeParty&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: Engine that switches party and reservists around<br />
#<br />
# Aliased Script Content:<br />
#&nbsp;&nbsp;* Game_Actor&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : Adds the required member status variable<br />
#&nbsp;&nbsp;* Game_Party&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : Makes the reserve array &amp; alters add/remove member<br />
#<br />
# Rewritten Script Content:<br />
#&nbsp;&nbsp;* Scene_Menu&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : update_status edited for reservist restrictions<br />
#&nbsp;&nbsp;* Scene_Skill&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: main method altered to allow access to reserves<br />
#&nbsp;&nbsp;* Scene_Equip&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: main method altered to allow access to reserves<br />
#&nbsp;&nbsp;* Scene_Battle&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : start_phase5 altered to allow reserve EXP gains<br />
#<br />
# All scripts that are rewrites of the default scripts have their new code in<br />
# defined areas&nbsp;&nbsp;beginning with&nbsp;&nbsp;either "Beginning of Replaced Code"&nbsp;&nbsp;or with<br />
# "Beginning of Inserted Code",&nbsp;&nbsp;and ending&nbsp;&nbsp;with a like commented statement.<br />
# In many cases, the original code is still available,&nbsp;&nbsp;but commented out for<br />
# end-user recognition.<br />
#<br />
#<br />
#==============================================================================<br />
<br />
<br />
<br />
module RPGAdvReserve<br />
<br />
<br />
&nbsp;&nbsp;# FEATURE SETTINGS<br />
&nbsp;&nbsp;# =======================================================================<br />
<br />
&nbsp;&nbsp;# If Reserve members appear in the menu status screen.<br />
&nbsp;&nbsp;&nbsp;&nbsp;MENU_STATUS = true<br />
<br />
&nbsp;&nbsp;# The percent of Exp reserve members get compared to active.<br />
&nbsp;&nbsp;&nbsp;&nbsp;EXP_PERCENT = 100<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;# (NEW) Allow party to be emptied by Party Changer (not recommended)<br />
&nbsp;&nbsp;# Original did not have a block to prevent emptying ... what a flaw!<br />
&nbsp;&nbsp;&nbsp;&nbsp;PERMIT_EMPTY = true<br />
<br />
<br />
&nbsp;&nbsp;# COLOR SETTINGS<br />
&nbsp;&nbsp;# =======================================================================<br />
<br />
&nbsp;&nbsp;# Color of actor name when required to be in party.<br />
&nbsp;&nbsp;# Default 216,150,20,255:&nbsp;&nbsp;Goldenrod<br />
&nbsp;&nbsp;&nbsp;&nbsp;COLOR_REQUIRED = Color.new(216, 150, 20, 255)<br />
<br />
&nbsp;&nbsp;# Color of actor name in menu status if a reserve member.<br />
&nbsp;&nbsp;# Default 152, 181, 100, 255:&nbsp;&nbsp;Olive<br />
&nbsp;&nbsp;&nbsp;&nbsp;COLOR_RESERVIST = Color.new(152, 181, 100, 255)<br />
<br />
<br />
&nbsp;&nbsp;# ACTOR WARNING MESSAGES<br />
&nbsp;&nbsp;# =======================================================================<br />
&nbsp;&nbsp;# A carte-blanch error if actor IDs values given are invalid<br />
&nbsp;&nbsp;&nbsp;&nbsp;ID_INVALID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= "ID given is invalid."<br />
&nbsp;&nbsp;# Define the text used to show at least one invalid party or reservist ID.<br />
&nbsp;&nbsp;&nbsp;&nbsp;SWAP_Invalid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= "Cannot swap members. One or both are invalid."<br />
&nbsp;&nbsp;# Define the text used to show the actor ID is not in the reservist party.<br />
&nbsp;&nbsp;&nbsp;&nbsp;TO_PARTY_Invalid&nbsp;&nbsp;&nbsp;&nbsp;= "Warning: Character is not in the reserve party."<br />
&nbsp;&nbsp;# Define the text used to show the party is full.<br />
&nbsp;&nbsp;&nbsp;&nbsp;TO_PARTY_Full&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = "Warning: Main party is full."<br />
&nbsp;&nbsp;# Define the text used to show the actor ID is not in the current party.<br />
&nbsp;&nbsp;&nbsp;&nbsp;TO_RESERVE_Invalid&nbsp;&nbsp;= "Warning: Character is not in the main party."<br />
<br />
<br />
&nbsp;&nbsp;# PARTY CHANGER MESSAGES<br />
&nbsp;&nbsp;# =======================================================================<br />
<br />
&nbsp;&nbsp;# Single-line text used to request a party be formed to default.<br />
&nbsp;&nbsp;&nbsp;&nbsp;INFO_Request1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = "Please form a party."<br />
&nbsp;&nbsp;# Dual-line text used to request a custom sized party. Must include {size}.<br />
&nbsp;&nbsp;&nbsp;&nbsp;INFO_Request2a&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= "Please form a party"<br />
&nbsp;&nbsp;&nbsp;&nbsp;INFO_Request2b&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= "of up to {size} members."<br />
&nbsp;&nbsp;# Warning to note max size setting is invalid.<br />
&nbsp;&nbsp;&nbsp;&nbsp;SIZE_Invalid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= "Warning: Invalid max size for party."<br />
&nbsp;&nbsp;# Text used to indicate empty position in party<br />
&nbsp;&nbsp;&nbsp;&nbsp;EMPTY&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = "- Empty -"<br />
&nbsp;&nbsp;&nbsp;&nbsp;DISALLOWED&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= "- Disallowed -"<br />
<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Game_Actor<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class handles the actor. It's used within the Game_Actors class<br />
#&nbsp;&nbsp;(&#36;game_actors) and refers to the Game_Party class (&#36;game_party).<br />
#==============================================================================<br />
<br />
class Game_Actor &lt; Game_Battler<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Public Instance Variables<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;attr_accessor :required&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # required party member flag<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Alias Listings<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;alias rpgadv_reserve_g_actor_setup setup<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Setup<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def setup(actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;rpgadv_reserve_g_actor_setup(actor_id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Run the original method<br />
&nbsp;&nbsp;&nbsp;&nbsp;@required = false&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Add the additional flag<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
#==============================================================================<br />
# ** Game_Party<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class handles the party. It includes information on amount of gold<br />
#&nbsp;&nbsp;and items. Refer to "&#36;game_party" for the instance of this class.<br />
#==============================================================================<br />
<br />
class Game_Party<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Public Instance Variables<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;attr_accessor :reserve_actors&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # reserve actors array<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Alias Listings<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;alias rpgadv_reserve_g_party_init initialize<br />
&nbsp;&nbsp;alias rpgadv_reserve_g_party_setup_add add_actor<br />
&nbsp;&nbsp;alias rpgadv_reserve_g_party_setup_remove remove_actor<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Object Initialization<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def initialize<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;rpgadv_reserve_g_party_init&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Run the original method<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors = []&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Add the additional array<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Add an Actor<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def add_actor(actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_actors[actor_id]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get actor&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @actors.size &gt;= 4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If the party is full<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if not @actors.include?(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If actor not in party&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if not @reserve_actors.include?(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If actor not in reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors.push(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Add actor to reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And exit method<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;rpgadv_reserve_g_party_setup_add(actor_id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Run the original method<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Remove Actor<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def remove_actor(actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors.delete(&#36;game_actors[actor_id])&nbsp;&nbsp;# Delete actor from reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;rpgadv_reserve_g_party_setup_remove(actor_id)&nbsp;&nbsp; # Run the original method<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Swap Actors<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor1 : actor<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor2 : actor<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def swap(actor1, actor2)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;error = false&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set no error<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if not @actors.include?(actor1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If actor1 not in party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;error = true&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set error <br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if not @reserve_actors.include?(actor2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If actor2 not in reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;error = true&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set error <br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if error&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If in error<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(RPGAdvReserve::SWAP_Invalid)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Display error message<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And exit method<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors.push(actor1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Add party actor to reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;@actors.delete(actor1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Delete actor from party<br />
&nbsp;&nbsp;&nbsp;&nbsp;add_actor(actor2.id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Add reserve actor to party<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors.delete(actor2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Delete from reserve party<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Transfer to Party<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor : actor<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def transfer_to_party(actor)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if not @reserve_actors.include?(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If actor not in reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(RPGAdvReserve::TO_PARTY_Invalid)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Display error message<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And exit method<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @actors.size == 4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If party is full<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(RPGAdvReserve::TO_PARTY_Full)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Display error message<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And exit method<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;add_actor(actor.id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Add reservist to party<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors.delete(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Delete from reserve party<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Transfer to Reserve<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor : actor<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def transfer_to_reserve(actor)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if not @actors.include?(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If actor not in party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(RPGAdvReserve::TO_RESERVE_Invalid)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Display error message<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And exit method<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;remove_actor(actor.id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Delete actor from party<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_actors.push(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Add party actor to reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Swap Actors by ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; party_actor_id&nbsp;&nbsp; : actor ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; reserve_actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def swap_by_id(party_actor_id, reserve_actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;return unless valid_id?(party_actor_id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if invalid actor ID<br />
&nbsp;&nbsp;&nbsp;&nbsp;return unless valid_id?(reserve_actor_id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if invalid reserve ID<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;actor1 = &#36;game_actors[party_actor_id]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get party member actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;actor2 = &#36;game_actors[reserve_actor_id]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get reserve member actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;swap(actor1, actor2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Swap the actors<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Transfer to Party by ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; reserve_actor : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def transfer_to_party_by_id(reserve_actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;return unless valid_id?(reserve_actor_id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if invalid reserve ID<br />
&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_actors[reserve_actor_id]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get reserve member actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;transfer_to_party(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Transfer actor to party<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Transfer to Reserve by ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; main_party_actor : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def transfer_to_reserve_by_id(party_actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;return unless valid_id?(party_actor_id)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if invalid actor ID<br />
&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_actors[party_actor_id]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get party member actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;transfer_to_reserve(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Transfer actor to reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Test for valid values above 0<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def valid_id?(actor_id)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;test = true&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Assume passes<br />
&nbsp;&nbsp;&nbsp;&nbsp;test = false if actor_id.nil?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Fail if nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;test = false unless actor_id.is_a?(Numeric)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Fail if not numeric<br />
&nbsp;&nbsp;&nbsp;&nbsp;test = false if actor_id &lt;= 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if invalid value<br />
&nbsp;&nbsp;&nbsp;&nbsp;return true&nbsp;&nbsp;if test&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Exit true if passes<br />
&nbsp;&nbsp;&nbsp;&nbsp;print(RPGAdvReserve::ID_INVALID)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Render ID alert<br />
&nbsp;&nbsp;&nbsp;&nbsp;return false&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Exit method false<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Window_Base<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class is for all in-game windows.<br />
#==============================================================================<br />
<br />
class Window_Base &lt; Window<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Required Color (Goldenrod)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def required_color<br />
&nbsp;&nbsp;&nbsp;&nbsp;return RPGAdvReserve::COLOR_REQUIRED<br />
&nbsp;&nbsp;end<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Required Color (Olive)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def reservist_color<br />
&nbsp;&nbsp;&nbsp;&nbsp;return RPGAdvReserve::COLOR_RESERVIST<br />
&nbsp;&nbsp;end<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Draw Required Name<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor : actor<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; x&nbsp;&nbsp;&nbsp;&nbsp; : draw spot x-coordinate<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; y&nbsp;&nbsp;&nbsp;&nbsp; : draw spot y-coordinate<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def draw_actor_required(actor, x, y)<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.font.color = required_color<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.draw_text(x, y, 120, 32, actor.name)<br />
&nbsp;&nbsp;end&nbsp;&nbsp;<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Draw Reservist Name<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor : actor<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; x&nbsp;&nbsp;&nbsp;&nbsp; : draw spot x-coordinate<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; y&nbsp;&nbsp;&nbsp;&nbsp; : draw spot y-coordinate<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def draw_actor_reservist(actor, x, y)<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.font.color = reservist_color<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.draw_text(x, y, 120, 32, actor.name)<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Window_MenuStatus<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This window displays party member status on the menu screen.<br />
#==============================================================================<br />
<br />
class Window_MenuStatus &lt; Window_Selectable<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Refresh<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.dispose&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Erase contents at start<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_max = &#36;game_party.actors.size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set max size by party<br />
&nbsp;&nbsp;&nbsp;&nbsp;if RPGAdvReserve::MENU_STATUS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If Switch engaged&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@item_max += &#36;game_party.reserve_actors.size&nbsp;&nbsp;&nbsp;&nbsp;# Add reserves to size<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;wd&nbsp;&nbsp;&nbsp;&nbsp;= width - 32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set width<br />
&nbsp;&nbsp;&nbsp;&nbsp;ht&nbsp;&nbsp;&nbsp;&nbsp;= @item_max * 120 - 32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set height by max size<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents = Bitmap.new(wd, ht)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set contents<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.clear&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # And make contents clear<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;actor_array = []&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# create actor array<br />
&nbsp;&nbsp;&nbsp;&nbsp;for actor in &#36;game_party.actors&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Cycle through party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor_array.push(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # and push actors in array<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if RPGAdvReserve::MENU_STATUS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If Switch engaged<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for actor in &#36;game_party.reserve_actors&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Cycle through reserves<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor_array.push(actor)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # and push actors in array<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;party_idx_max = &#36;game_party.actors.size - 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get last ID for party<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;for id in 0...@item_max&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Cycle total actor size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x = 64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set X Coordinate<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y = id * 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set Y coord by counter<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor = actor_array[id]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get actor by counter<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_graphic(actor, x - 40, y + 80)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw character<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_name(actor, x, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Draw name<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if id &gt; party_idx_max&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If counter past party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_reservist(actor, x, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw reservist name<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_class(actor, x + 144, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw class<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_level(actor, x, y + 32)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Draw level<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_state(actor, x + 90, y + 32)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw state<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_exp(actor, x, y + 64)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Draw exp<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_hp(actor, x + 236, y + 32)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw hp<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_sp(actor, x + 236, y + 64)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw sp<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end&nbsp;&nbsp;<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Cursor Rectangle Update<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_cursor_rect<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @index &lt; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If no valid index <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.cursor_rect.empty&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Remove cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y&nbsp;&nbsp; = @index * 116 - self.oy&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get y-position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wd&nbsp;&nbsp;= self.width - 32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get width <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.cursor_rect.set(0, y, wd, 96)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And set cursor dimension<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if self.cursor_rect.y &lt; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If position less than 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.oy -= 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Reduce origin <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;refresh&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Refresh menu contents<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_cursor_rect&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And redraw cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if self.cursor_rect.y &gt; 348&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If position over 348<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.oy += 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Increase origin<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;refresh&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Refresh menu contents<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_cursor_rect&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And redraw cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Window_ChangeMain<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This window displays the current party members in the Party Changer scene<br />
#==============================================================================<br />
<br />
class Window_ChangeMain &lt; Window_Selectable<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Object Initialization<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def initialize(max_size=3)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;super(0, 0, 320, 480)<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents = Bitmap.new(width - 32, height - 32)<br />
&nbsp;&nbsp;&nbsp;&nbsp;refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.active = false<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.index&nbsp;&nbsp;= -1<br />
&nbsp;&nbsp;&nbsp;&nbsp;@max_size&nbsp;&nbsp; = max_size<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Refresh<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.clear&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Make contents clear<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_max = 4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set max&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;for idx in 0..3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Cycle through party max<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x = 64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set text x coordinates<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y = idx * 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set Y coords by counter<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.actors[idx] != nil&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If a valid actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_party.actors[idx]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if idx &gt; @max_size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If space above max size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;text = RPGAdvReserve::DISALLOWED&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set disallowed text<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;text = RPGAdvReserve::EMPTY&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set empty space text<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.contents.draw_text(0,y+32,288,32,text,1) # Display the text<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;next&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And skip to next actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_graphic(actor, x - 40, y + 80)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw Graphic<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_name(actor, x, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Draw name<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if actor.required == true&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If a required actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_required(actor, x, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Redraw Required name<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_level(actor, x + 160, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw Level<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_hp(actor, x, y + 32)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw HP<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_sp(actor, x, y + 64)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw SP<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Cursor Rectangle Update<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_cursor_rect<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @index &lt; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If no valid index <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.cursor_rect.empty&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Remove cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y&nbsp;&nbsp; = @index * 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get y-position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wd&nbsp;&nbsp;= self.width - 32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get width <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.cursor_rect.set(0, y, wd, 96)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And set cursor dimension<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Window_ChangeReserve<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This window displays the reserve party members in the Party Changer scene<br />
#==============================================================================<br />
<br />
class Window_ChangeReserve &lt; Window_Selectable<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Object Initialization<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def initialize<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;super(320, 0, 320, 360)<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents = Bitmap.new(width - 32, height - 32)<br />
&nbsp;&nbsp;&nbsp;&nbsp;refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.active = false<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.index = -1<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Refresh<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_max = &#36;game_party.reserve_actors.size + 1&nbsp;&nbsp; # Get reservist party max<br />
&nbsp;&nbsp;&nbsp;&nbsp;size&nbsp;&nbsp;= 96 + @item_max * 96 - 32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set reservist area size<br />
&nbsp;&nbsp;&nbsp;&nbsp;size&nbsp;&nbsp;= 328 if size &lt; 328&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Limit size to window<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.dispose&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Erase contents area<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents = Bitmap.new(width - 32, size)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set contents<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.clear&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # And make contents clear<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;for idx in 0...&#36;game_party.reserve_actors.size&nbsp;&nbsp;&nbsp;&nbsp;# Cycle through reservists<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x = 64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set text x coordinates<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y = idx * 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Set Y coords by counter<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_party.reserve_actors[idx]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get reservist actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_graphic(actor, x - 40, y + 80)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw character<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_name(actor, x, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Draw name<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_level(actor, x + 160, y)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw Level<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_hp(actor, x, y + 32)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw HP<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_actor_sp(actor, x, y + 64)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Draw SP<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Cursor Rectangle Update<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_cursor_rect<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @index &lt; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If no valid index <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.cursor_rect.empty&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Remove cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y&nbsp;&nbsp; = @index * 116 - self.oy&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get y-position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wd&nbsp;&nbsp;= self.width - 32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get width <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.cursor_rect.set(0, y, wd, 96)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And set cursor dimension<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if self.cursor_rect.y &lt; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If position less than 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.oy -= 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Reduce origin <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;refresh&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Refresh menu contents<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_cursor_rect&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And redraw cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if self.cursor_rect.y &gt; 232&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If position over 232<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.oy += 116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Increase origin<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;refresh&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Refresh menu contents<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_cursor_rect&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And redraw cursor<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
#==============================================================================<br />
# ** Window_PartyChangeInfo<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This window displays help information in the Party Changer scene<br />
#==============================================================================<br />
<br />
class Window_PartyChangeInfo &lt; Window_Base<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Public Instance Variables<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;attr_reader&nbsp;&nbsp; :max_size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # maximum party size<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Object Initialization<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def initialize(max_size)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;super(320, 360, 320, 120)<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents = Bitmap.new(width - 32, height - 32)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@max_size = max_size<br />
&nbsp;&nbsp;&nbsp;&nbsp;refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Refresh<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;self.contents.clear&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # And make contents clear<br />
&nbsp;&nbsp;&nbsp;&nbsp;text1 = RPGAdvReserve::INFO_Request1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get Full Party Size note<br />
&nbsp;&nbsp;&nbsp;&nbsp;text2 = RPGAdvReserve::INFO_Request2a&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get 1st Set party note<br />
&nbsp;&nbsp;&nbsp;&nbsp;tempt = RPGAdvReserve::INFO_Request2b&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Get 2nd Set party note<br />
&nbsp;&nbsp;&nbsp;&nbsp;text3 = tempt.gsub(/{size}/) {(@max_size.to_s) }&nbsp;&nbsp;# Replace string with size<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @max_size == 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # If max size default<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.contents.draw_text(4, 0, 240, 32, text1)&nbsp;&nbsp; # Show full party note<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @max_size &gt; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If alternate size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.contents.draw_text(4, 0, 240, 32, text2)&nbsp;&nbsp; # Show 1st party note<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.contents.draw_text(4, 32, 240, 32, text3)&nbsp;&nbsp;# Show 2nd party note<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Interpreter<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This interpreter runs event commands. This class is used within the<br />
#&nbsp;&nbsp;Game_System class and the Game_Event class.<br />
#==============================================================================<br />
<br />
class Interpreter<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Swap Actors by database ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; party_actor_id&nbsp;&nbsp; : actor ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; reserve_actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def swap_by_id(party_actor_id=1, reserve_actor_id=1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.swap_by_id(party_actor_id, reserve_actor_id)<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Transfer to Party by database ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; reserve_actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def transfer_to_party_by_id(reserve_actor_id=1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.transfer_to_party_by_id(reserve_actor_id)<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Transfer to Reserve by database ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; party_actor_id : actor ID<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def transfer_to_reserve_by_id(party_actor_id=1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.transfer_to_reserve_by_id(party_actor_id)<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Set required actor flag<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; actor_id : actor ID<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; flag&nbsp;&nbsp;&nbsp;&nbsp; : boolean value (true/false)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def required_actor(actor_id=0, flag=true)<br />
&nbsp;&nbsp;&nbsp;&nbsp;return if actor_id.nil?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;return unless value.is_a?(Numeric)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Exit if not numeric<br />
&nbsp;&nbsp;&nbsp;&nbsp;return if actor_id &lt;= 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Exit if invalid value<br />
&nbsp;&nbsp;&nbsp;&nbsp;return if &#36;game_party.actors[actor_id] == nil&nbsp;&nbsp;&nbsp;&nbsp; # Exit if no actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;return unless (flag == true || flag == false)&nbsp;&nbsp;&nbsp;&nbsp; # Exit if not boolean<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.actors[actor_id].required = flag&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Apply the flag<br />
&nbsp;&nbsp;end<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Party Changer Menu<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; max_size : party size maximum<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def change_party(max_size=0)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;scene = Scene_ChangeParty.new(max_size)<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Scene_Menu<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class performs menu screen processing.<br />
#==============================================================================<br />
<br />
class Scene_Menu<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Frame Update (when status window is active)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_status<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If B button was pressed<br />
&nbsp;&nbsp;&nbsp;&nbsp;if Input.trigger?(Input::B)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play cancel SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.cancel_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Make command window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@command_window.active = true<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@status_window.active = false<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@status_window.index = -1<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If C button was pressed<br />
&nbsp;&nbsp;&nbsp;&nbsp;if Input.trigger?(Input::C)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Branch by command window cursor position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case @command_window.index<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;when 1&nbsp;&nbsp;# skill<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;## If this actor's action limit is 2 or more<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#if &#36;game_party.actors[@status_window.index].restriction &gt;= 2<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# * Beginning of Replaced Code<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#--------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Check actor restriction if index points to active party member<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if @status_window.index &lt; &#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;check_actor = &#36;game_party.actors[@status_window.index]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Or check actor restriction for reserve party member<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;size = &#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;check_actor = &#36;game_party.reserve_actors[@status_window.index - size]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If this actor's action limit is 2 or more<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if check_actor.restriction &gt;= 2<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#--------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# * Replaced Code End<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play buzzer SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Switch to skill screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;scene = Scene_Skill.new(@status_window.index)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;when 2&nbsp;&nbsp;# equipment<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Switch to equipment screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;scene = Scene_Equip.new(@status_window.index)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;when 3&nbsp;&nbsp;# status<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Switch to status screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;scene = Scene_Status.new(@status_window.index)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Scene_Skill<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class performs skill screen processing.<br />
#==============================================================================<br />
<br />
class Scene_Skill<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Main Processing<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def main&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;## Get actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;#@actor = &#36;game_party.actors[@actor_index]<br />
&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;# * Beginning of Replaced Code<br />
&nbsp;&nbsp;&nbsp;&nbsp;#------------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If actor index within party size<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @actor_index &lt; &#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get actor from party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor = &#36;game_party.actors[@actor_index]<br />
&nbsp;&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise get actor from reserve party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;idx = @actor_index - &#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor = &#36;game_party.reserve_actors[idx]<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#------------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;# * Replaced Code End<br />
&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Make help window, status window, and skill window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@help_window = Window_Help.new<br />
&nbsp;&nbsp;&nbsp;&nbsp;@status_window = Window_SkillStatus.new(@actor)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@skill_window = Window_Skill.new(@actor)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Associate help window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@skill_window.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Make target window (set to invisible / inactive)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@target_window = Window_Target.new<br />
&nbsp;&nbsp;&nbsp;&nbsp;@target_window.visible = false<br />
&nbsp;&nbsp;&nbsp;&nbsp;@target_window.active = false<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Execute transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;Graphics.transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Main loop<br />
&nbsp;&nbsp;&nbsp;&nbsp;loop do<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Update game screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Graphics.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Update input information<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Input.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Frame update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Abort loop if screen is changed<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;scene != self<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Prepare for transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;Graphics.freeze<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Dispose of windows<br />
&nbsp;&nbsp;&nbsp;&nbsp;@help_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@status_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@skill_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@target_window.dispose<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Scene_Equip<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class performs equipment screen processing.<br />
#==============================================================================<br />
<br />
class Scene_Equip<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Main Processing<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def main&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;## Get actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;#@actor = &#36;game_party.actors[@actor_index]<br />
&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;# * Beginning of Replaced Code<br />
&nbsp;&nbsp;&nbsp;&nbsp;#------------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If actor index within party size<br />
&nbsp;&nbsp;&nbsp;&nbsp;if @actor_index &lt; &#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Get actor from party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor = &#36;game_party.actors[@actor_index]<br />
&nbsp;&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Otherwise get actor from reserve party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;idx = @actor_index - &#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor = &#36;game_party.reserve_actors[idx]<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#------------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;# * Replaced Code End<br />
&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Make windows<br />
&nbsp;&nbsp;&nbsp;&nbsp;@help_window = Window_Help.new<br />
&nbsp;&nbsp;&nbsp;&nbsp;@left_window = Window_EquipLeft.new(@actor)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@right_window = Window_EquipRight.new(@actor)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window1 = Window_EquipItem.new(@actor, 0)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window2 = Window_EquipItem.new(@actor, 1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window3 = Window_EquipItem.new(@actor, 2)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window4 = Window_EquipItem.new(@actor, 3)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window5 = Window_EquipItem.new(@actor, 4)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Associate help window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@right_window.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window1.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window2.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window3.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window4.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window5.help_window = @help_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Set cursor position<br />
&nbsp;&nbsp;&nbsp;&nbsp;@right_window.index = @equip_index<br />
&nbsp;&nbsp;&nbsp;&nbsp;refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Execute transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;Graphics.transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Main loop<br />
&nbsp;&nbsp;&nbsp;&nbsp;loop do<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Update game screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Graphics.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Update input information<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Input.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Frame update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Abort loop if screen is changed<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;scene != self<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Prepare for transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;Graphics.freeze<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Dispose of windows<br />
&nbsp;&nbsp;&nbsp;&nbsp;@help_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@left_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@right_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window1.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window2.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window3.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window4.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@item_window5.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Scene_Battle<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class performs battle screen processing.<br />
#==============================================================================<br />
<br />
class Scene_Battle<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Start After Battle Phase<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def start_phase5<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Shift to phase 5<br />
&nbsp;&nbsp;&nbsp;&nbsp;@phase = 5<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Play battle end ME<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.me_play(&#36;game_system.battle_end_me)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Return to BGM before battle started<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.bgm_play(&#36;game_temp.map_bgm)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Initialize EXP, amount of gold, and treasure<br />
&nbsp;&nbsp;&nbsp;&nbsp;exp = 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;gold = 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;treasures = []<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Loop<br />
&nbsp;&nbsp;&nbsp;&nbsp;for enemy in &#36;game_troop.enemies<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If enemy is not hidden<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unless enemy.hidden<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Add EXP and amount of gold obtained<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exp += enemy.exp<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gold += enemy.gold<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Determine if treasure appears<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if rand(100) &lt; enemy.treasure_prob<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if enemy.item_id &gt; 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;treasures.push(&#36;data_items[enemy.item_id])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if enemy.weapon_id &gt; 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;treasures.push(&#36;data_weapons[enemy.weapon_id])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if enemy.armor_id &gt; 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;treasures.push(&#36;data_armors[enemy.armor_id])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Treasure is limited to a maximum of 6 items<br />
&nbsp;&nbsp;&nbsp;&nbsp;treasures = treasures[0..5]<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Obtaining EXP<br />
&nbsp;&nbsp;&nbsp;&nbsp;for i in 0...&#36;game_party.actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_party.actors[i]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if actor.cant_get_exp? == false<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;last_level = actor.level<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor.exp += exp<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if actor.level &gt; last_level<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@status_window.level_up(i)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;# * Beginning of Inserted Code<br />
&nbsp;&nbsp;&nbsp;&nbsp;#------------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Obtain Reserve Character Exp Percentage<br />
&nbsp;&nbsp;&nbsp;&nbsp;perc = RPGAdvReserve::EXP_PERCENT<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Reserve Characters Obtaining EXP&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;for i in 0...&#36;game_party.reserve_actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor = &#36;game_party.reserve_actors[i]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if actor.cant_get_exp? == false<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actor.exp += exp * perc / 100<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;#------------------------------------------------------------------------<br />
&nbsp;&nbsp;&nbsp;&nbsp;# * Inserted&nbsp;&nbsp;Code End<br />
&nbsp;&nbsp;&nbsp;&nbsp;#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Obtaining gold<br />
&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.gain_gold(gold)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Obtaining treasure<br />
&nbsp;&nbsp;&nbsp;&nbsp;for item in treasures<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case item<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;when RPG::Item<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.gain_item(item.id, 1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;when RPG::Weapon<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.gain_weapon(item.id, 1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;when RPG::Armor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.gain_armor(item.id, 1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Make battle result window<br />
&nbsp;&nbsp;&nbsp;&nbsp;@result_window = Window_BattleResult.new(exp, gold, treasures)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Set wait count<br />
&nbsp;&nbsp;&nbsp;&nbsp;@phase5_wait_count = 100<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end<br />
<br />
<br />
<br />
#==============================================================================<br />
# ** Scene_ChangeParty<br />
#------------------------------------------------------------------------------<br />
#&nbsp;&nbsp;This class performs party management processing.<br />
#==============================================================================<br />
<br />
class Scene_ChangeParty<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Object Initialization<br />
&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp; max_size : max size of party<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def initialize(max_size=0)<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Obtain text warning<br />
&nbsp;&nbsp;&nbsp;&nbsp;text = RPGAdvReserve::SIZE_Invalid<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Set message and exit If below 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;if max_size &lt; 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(text)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Set message and exit if above standard limit of 4<br />
&nbsp;&nbsp;&nbsp;&nbsp;if max_size &gt; 4<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(text)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;end&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Set max size based on index positions (0-3) rather than (1-4)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@max_size = max_size<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Main Processing<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def main<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Define party max for Change Party menu (0-3)<br />
&nbsp;&nbsp;&nbsp;&nbsp;party_max&nbsp;&nbsp; = @max_size<br />
&nbsp;&nbsp;&nbsp;&nbsp;party_max&nbsp;&nbsp; = 4 if party_max == 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;party_max&nbsp;&nbsp; -= 1<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Make windows<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window&nbsp;&nbsp; = Window_ChangeMain.new(party_max)<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window = Window_ChangeReserve.new<br />
&nbsp;&nbsp;&nbsp;&nbsp;@info_window&nbsp;&nbsp;&nbsp;&nbsp;= Window_PartyChangeInfo.new(@max_size)<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Set window values<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window.index&nbsp;&nbsp;&nbsp;&nbsp; = 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.index&nbsp;&nbsp; = -1<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window.active&nbsp;&nbsp;&nbsp;&nbsp;= true<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.active&nbsp;&nbsp;= false<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Clear memorized actors<br />
&nbsp;&nbsp;&nbsp;&nbsp;@actor1 = nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;@actor2 = nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Execute transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;Graphics.transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Main loop<br />
&nbsp;&nbsp;&nbsp;&nbsp;loop do<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Update game screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Graphics.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Update input information<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Input.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Frame update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Abort loop if screen is changed<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;scene != self<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Prepare for transition<br />
&nbsp;&nbsp;&nbsp;&nbsp;Graphics.freeze<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Dispose of windows<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.dispose<br />
&nbsp;&nbsp;&nbsp;&nbsp;@info_window.dispose<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Main Processing<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Update windows&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;@info_window.update<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If party window is active: call update_party<br />
&nbsp;&nbsp;&nbsp;&nbsp;return update_party&nbsp;&nbsp;&nbsp;&nbsp; if @party_window.active<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If reserve window is active: call update_reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;return update_reserve&nbsp;&nbsp; if @reserve_window.active<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Frame Update (when updating the party window)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_party<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If B button was pressed<br />
&nbsp;&nbsp;&nbsp;&nbsp;if Input.trigger?(Input::B)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If party is empty and not permitted to empty<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.actors.size == 0 &amp;&amp; !RPGAdvReserve::PERMIT_EMPTY<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play buzzer SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If party is larger than maximum size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;val = @max_size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;val = 4 if val == 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.actors.size &gt; val<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play buzzer SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play cancel SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.cancel_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Switch to map screen<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;scene = Scene_Map.new<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If C button was pressed<br />
&nbsp;&nbsp;&nbsp;&nbsp;if Input.trigger?(Input::C)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set party window cursor position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;place = @party_window.index<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# if cursor goes beyond party size and no one in that spot<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if @max_size &gt; 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if place &gt;= @max_size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.actors[place].nil?<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play buzzer SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If party member exists at cursor position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.actors[place] != nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# And if party is required (cannot remove)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.actors[place].required<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play buzzer SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If there are no reserve party members<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.reserve_actors.size == 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Transfer the actor to the reserve party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.transfer_to_reserve(&#36;game_party.actors[place])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Refresh both windows<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@party_window.refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If reserve party members exist<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if &#36;game_party.reserve_actors.size &gt; 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Make reserve window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@party_window.active&nbsp;&nbsp;&nbsp;&nbsp;= false<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.index&nbsp;&nbsp; = 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.active&nbsp;&nbsp;= true<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Memorize party member<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor1 = &#36;game_party.actors[place]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Frame Update (when updating the reserve window)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_reserve<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If B button was pressed<br />
&nbsp;&nbsp;&nbsp;&nbsp;if Input.trigger?(Input::B)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play cancel SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.cancel_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Make party window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_activate_party_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;# If C button was pressed<br />
&nbsp;&nbsp;&nbsp;&nbsp;if Input.trigger?(Input::C)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Set reserve window cursor position<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;place = @reserve_window.index<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# if cursor goes beyond reserve party size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if place == &#36;game_party.reserve_actors.size<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If no memorized party actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if @actor1 == nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play buzzer SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Transfer stored party member to reserves<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.transfer_to_reserve(@actor1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Make party window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_activate_party_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If there is no stored party actor<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if @actor1 == nil<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Memorize reserve member<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor2 = &#36;game_party.reserve_actors[place]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Transfer reserve member to party<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.transfer_to_party(@actor2)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Make party window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_activate_party_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# If there a stored party actor exists<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Play decision SE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_system.se_play(&#36;data_system.decision_se)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Memorize reserve member<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@actor2 = &#36;game_party.reserve_actors[place]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Swap both party and reserve party members<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;game_party.swap(@actor1, @actor2)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# Make party window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update_activate_party_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;&nbsp;&nbsp;end<br />
&nbsp;&nbsp;end<br />
<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;# * Frame Update (when making the party window active)<br />
&nbsp;&nbsp;#--------------------------------------------------------------------------<br />
&nbsp;&nbsp;def update_activate_party_window<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;&nbsp;&nbsp;# Make party window active<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.index&nbsp;&nbsp; = -1<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.active&nbsp;&nbsp;= false<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window.active&nbsp;&nbsp;&nbsp;&nbsp;= true<br />
&nbsp;&nbsp;&nbsp;&nbsp;@party_window.refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;@reserve_window.refresh<br />
&nbsp;&nbsp;&nbsp;&nbsp;#<br />
&nbsp;&nbsp;end<br />
<br />
end</code></div></div></div>
		</div>
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Instructions</span></span><br />
Place below Scene_Debug and above Main.  It rewrites methods in four Scene_ classes, so it should be high in your list of custom scripts. Be aware it may conflict with the menu, skill, equip and battle treasure systems.<br />
<br />
Detailed instructions are included in the script itself.<br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Compatibility</span></span><br />
As noted, there are major rewrites.  Be warned.<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Credits and Thanks</span></span><br />
RPGAdvocate for the original version.<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Terms and Conditions</span></span><br />
There were no terms of use listed at RPG Advocate's site, Phylomortis.com. However, I would think it would be prudent to give him credit for the work.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[KustomElemState XP]]></title>
			<link>https://www.save-point.org/thread-13485.html</link>
			<pubDate>Tue, 26 May 2026 03:36:40 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=1471">kyonides</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13485.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">KustomElemState XP</span></span></div>
<br />
<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">by Kyonides</span></span></div>
<br />
<div style="text-align: center;" class="mycode_align">The Script is NOT COMPATIBLE With Other Element or State Related Scripts!</div>
<br />
<span style="font-weight: bold;" class="mycode_b">Introduction</span><br />
<br />
It's a very brief one for sure. <img src="https://www.save-point.org/images/smilies/ejlol/wink.gif" alt="Winking" title="Winking" class="smilie smilie_33" /><br />
Alter a given Actor's element or state rate during gameplay! <img src="https://www.save-point.org/images/smilies/ejlol/gamer.gif" alt="Gamer" title="Gamer" class="smilie smilie_183" /> <br />
The script creates or loads the custom ranks based on the current class. <img src="https://www.save-point.org/images/smilies/ejlol/orson.gif" alt="Orson" title="Orson" class="smilie smilie_167" /> <img src="https://www.save-point.org/images/smilies/ejlol/ghim.gif" alt="Ghim" title="Ghim" class="smilie smilie_226" /> <img src="https://www.save-point.org/images/smilies/ejlol/slayne.gif" alt="Slayne" title="Slayne" class="smilie smilie_228" /> <br />
It will never try to alter the Classes database contents! <img src="https://www.save-point.org/images/smilies/ejlol/thumbs.gif" alt="Two Thumbs Up!" title="Two Thumbs Up!" class="smilie smilie_61" /> <br />
<br />
Element / State Efficiency Letter 2 Percentage Conversion Table<br />
<br />
<span style="font-weight: bold;" class="mycode_b">A</span> - 200% (Weak)<br />
<span style="font-weight: bold;" class="mycode_b">B</span> - 150%<br />
<span style="font-weight: bold;" class="mycode_b">C</span> - 100% (Default)<br />
<span style="font-weight: bold;" class="mycode_b">D</span> - 50%<br />
<span style="font-weight: bold;" class="mycode_b">E</span> - 0% (Immune)<br />
<span style="font-weight: bold;" class="mycode_b">F</span> - -100% (Gets Healed?)<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Script Calls</span><br />
<br />
<span style="font-weight: bold;" class="mycode_b">STEP 1</span><br />
Get an Actor first! - 2 Methods:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor = &#36;game_party.actors[Index]<br />
actor = &#36;game_actors[ActorID]</code></div></div><br />
<span style="font-weight: bold;" class="mycode_b">STEP 2</span><br />
Use any of the following calls.<br />
<br />
Check out the current Index of an Element Rate:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor.find_element_rate(ElementID)</code></div></div><br />
Check out the current Effect % of an Element:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor.element_effect(ElementID)</code></div></div><br />
Change an Actor's Element Rate!  Rate Indices: 1 through 6<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor.custom_element_rank(ElementID, RateIndex)</code></div></div><br />
Change an Actor's State Rate!    Rate Indices: 1 through 6<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor.custom_state_rank(StateID, RateIndex)</code></div></div><br />
Move Current Element State 1 Position to the Left<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor.prev_element_rate!(ElementID)</code></div></div><br />
Move Current Element State 1 Position to the Right<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor.next_element_rate!(ElementID)</code></div></div><br />
<div class="tborder">
  			<div class="thead" style="padding:4px; margin:1px;"><input type="button" class="button" value="+" style="font-family:Monospace; padding:0px" onclick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].style.display=='none'){ this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='';this.value='-';} else {this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='none';this.value='+';}"/> USAGE EXAMPLE</div>
  			<div class="trow2" style="display:none; padding:4px; margin:1px;">
<div style="text-align: center;" class="mycode_align"><img src="https://i.postimg.cc/zfSdFYxM/kustomelemstate-xp001.jpg" loading="lazy"  alt="[Image: kustomelemstate-xp001.jpg]" class="mycode_img" /></div>
</div>
		</div>
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">The Script</span></span><br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code># * KustomElemState XP * #<br />
#   Scripter : Kyonides<br />
#   2025-05-25<br />
<br />
# * NOT COMPATIBLE With Other Element or State Related Scripts! * #<br />
<br />
# Alter a given Actor's element or state rate during gameplay!<br />
# The script creates / loads the custom ranks based on the current class.<br />
# It will never try to alter the Classes DB contents!<br />
<br />
# * Script Calls * #<br />
<br />
# STEP #1: Get an Actor first! - 2 Methods:<br />
# actor = &#36;game_party.actors[Index]<br />
# actor = &#36;game_actors[ActorID]<br />
<br />
# STEP #2: Use any of the following calls.<br />
# - Check out the current Index of an Element Rate:<br />
# actor.find_element_rate(ElementID)<br />
<br />
# - Check out the current Effect % of an Element:<br />
# actor.element_effect(ElementID)<br />
<br />
# - Change an Actor's Element Rate!  Rate Indices: 1 through 6<br />
# actor.custom_element_rank(ElementID, RateIndex)<br />
<br />
# - Change an Actor's State Rate!    Rate Indices: 1 through 6<br />
# actor.custom_state_rank(StateID, RateIndex)<br />
<br />
# - Move Current Element State 1 Position to the Left<br />
# actor.prev_element_rate!(ElementID)<br />
<br />
# - Move Current Element State 1 Position to the Right<br />
# actor.next_element_rate!(ElementID)<br />
<br />
class Game_Actor<br />
  ER_TABLE = [0,200,150,100,50,0,-100]<br />
  alias :kyon_kust_elem_stt_gm_act_setup :setup<br />
  alias :kyon_kust_elem_stt_gm_act_class_id_set :class_id=<br />
  def setup(actor_id)<br />
    kyon_kust_elem_stt_gm_act_setup(actor_id)<br />
    @element_ranks = {}<br />
    @state_ranks = {}<br />
    custom_element_ranks!<br />
    custom_state_ranks!<br />
  end<br />
<br />
  def custom_element_ranks!<br />
    @element_ranks[@class_id] ||= &#36;data_classes[@class_id].element_ranks.dup<br />
  end<br />
<br />
  def custom_state_ranks!<br />
    @state_ranks[@class_id] ||= &#36;data_classes[@class_id].state_ranks.dup<br />
  end<br />
<br />
  def find_element_rate(elem_id)<br />
    @element_ranks[@class_id][elem_id]<br />
  end<br />
<br />
  def element_effect(elem_id)<br />
    n = find_element_rate(elem_id)<br />
    ER_TABLE[n]<br />
  end<br />
<br />
  def armor_ids<br />
    [@armor1_id, @armor2_id, @armor3_id, @armor4_id]<br />
  end<br />
<br />
  def element_rate(element_id)<br />
    pos = find_element_rate(element_id)<br />
    result = ER_TABLE[pos]<br />
    armor_ids.each do |i|<br />
      armor = &#36;data_armors[i]<br />
      if armor != nil and armor.guard_element_set.include?(element_id)<br />
        result /= 2<br />
      end<br />
    end<br />
    @states.each do |i|<br />
      if &#36;data_states[i].guard_element_set.include?(element_id)<br />
        result /= 2<br />
      end<br />
    end<br />
    return result<br />
  end<br />
<br />
  def state_ranks<br />
    @state_ranks[@class_id]<br />
  end<br />
<br />
  def custom_element_rank(n, value)<br />
    @element_ranks[@class_id][n] = value<br />
  end<br />
<br />
  def custom_state_rank(n, value)<br />
    @state_ranks[@class_id][n] = value<br />
  end<br />
<br />
  def class_id=(class_id)<br />
    class_id_set(class_id)<br />
    custom_element_ranks!<br />
    custom_state_ranks!<br />
  end<br />
<br />
  def change_element_rate(elem_id, value, start)<br />
    pos = find_element_rate(elem_id)<br />
    pos = (pos + value) % 7<br />
    pos = start if pos == 0<br />
    custom_element_rank(elem_id, pos)<br />
    pos<br />
  end<br />
<br />
  def prev_element_rate!(elem_id)<br />
    change_element_rate(elem_id, -1, 6)<br />
  end<br />
<br />
  def next_element_rate!(elem_id)<br />
    change_element_rate(elem_id, 1, 1)<br />
  end<br />
end</code></div></div><br />
<span style="font-weight: bold;" class="mycode_b">Terms &amp; Conditions</span><br />
<br />
Free as in <img src="https://www.save-point.org/images/smilies/ejlol/beer.gif" alt="Beer" title="Beer" class="smilie smilie_189" /> beer.<br />
Mention me in your game credits.<br />
That's it! <img src="https://www.save-point.org/images/smilies/ejlol/tongue.gif" alt="Tongue sticking out" title="Tongue sticking out" class="smilie smilie_24" />]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">KustomElemState XP</span></span></div>
<br />
<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">by Kyonides</span></span></div>
<br />
<div style="text-align: center;" class="mycode_align">The Script is NOT COMPATIBLE With Other Element or State Related Scripts!</div>
<br />
<span style="font-weight: bold;" class="mycode_b">Introduction</span><br />
<br />
It's a very brief one for sure. <img src="https://www.save-point.org/images/smilies/ejlol/wink.gif" alt="Winking" title="Winking" class="smilie smilie_33" /><br />
Alter a given Actor's element or state rate during gameplay! <img src="https://www.save-point.org/images/smilies/ejlol/gamer.gif" alt="Gamer" title="Gamer" class="smilie smilie_183" /> <br />
The script creates or loads the custom ranks based on the current class. <img src="https://www.save-point.org/images/smilies/ejlol/orson.gif" alt="Orson" title="Orson" class="smilie smilie_167" /> <img src="https://www.save-point.org/images/smilies/ejlol/ghim.gif" alt="Ghim" title="Ghim" class="smilie smilie_226" /> <img src="https://www.save-point.org/images/smilies/ejlol/slayne.gif" alt="Slayne" title="Slayne" class="smilie smilie_228" /> <br />
It will never try to alter the Classes database contents! <img src="https://www.save-point.org/images/smilies/ejlol/thumbs.gif" alt="Two Thumbs Up!" title="Two Thumbs Up!" class="smilie smilie_61" /> <br />
<br />
Element / State Efficiency Letter 2 Percentage Conversion Table<br />
<br />
<span style="font-weight: bold;" class="mycode_b">A</span> - 200% (Weak)<br />
<span style="font-weight: bold;" class="mycode_b">B</span> - 150%<br />
<span style="font-weight: bold;" class="mycode_b">C</span> - 100% (Default)<br />
<span style="font-weight: bold;" class="mycode_b">D</span> - 50%<br />
<span style="font-weight: bold;" class="mycode_b">E</span> - 0% (Immune)<br />
<span style="font-weight: bold;" class="mycode_b">F</span> - -100% (Gets Healed?)<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Script Calls</span><br />
<br />
<span style="font-weight: bold;" class="mycode_b">STEP 1</span><br />
Get an Actor first! - 2 Methods:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor = &#36;game_party.actors[Index]<br />
actor = &#36;game_actors[ActorID]</code></div></div><br />
<span style="font-weight: bold;" class="mycode_b">STEP 2</span><br />
Use any of the following calls.<br />
<br />
Check out the current Index of an Element Rate:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor.find_element_rate(ElementID)</code></div></div><br />
Check out the current Effect % of an Element:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor.element_effect(ElementID)</code></div></div><br />
Change an Actor's Element Rate!  Rate Indices: 1 through 6<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor.custom_element_rank(ElementID, RateIndex)</code></div></div><br />
Change an Actor's State Rate!    Rate Indices: 1 through 6<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor.custom_state_rank(StateID, RateIndex)</code></div></div><br />
Move Current Element State 1 Position to the Left<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor.prev_element_rate!(ElementID)</code></div></div><br />
Move Current Element State 1 Position to the Right<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>actor.next_element_rate!(ElementID)</code></div></div><br />
<div class="tborder">
  			<div class="thead" style="padding:4px; margin:1px;"><input type="button" class="button" value="+" style="font-family:Monospace; padding:0px" onclick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].style.display=='none'){ this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='';this.value='-';} else {this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='none';this.value='+';}"/> USAGE EXAMPLE</div>
  			<div class="trow2" style="display:none; padding:4px; margin:1px;">
<div style="text-align: center;" class="mycode_align"><img src="https://i.postimg.cc/zfSdFYxM/kustomelemstate-xp001.jpg" loading="lazy"  alt="[Image: kustomelemstate-xp001.jpg]" class="mycode_img" /></div>
</div>
		</div>
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">The Script</span></span><br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code># * KustomElemState XP * #<br />
#   Scripter : Kyonides<br />
#   2025-05-25<br />
<br />
# * NOT COMPATIBLE With Other Element or State Related Scripts! * #<br />
<br />
# Alter a given Actor's element or state rate during gameplay!<br />
# The script creates / loads the custom ranks based on the current class.<br />
# It will never try to alter the Classes DB contents!<br />
<br />
# * Script Calls * #<br />
<br />
# STEP #1: Get an Actor first! - 2 Methods:<br />
# actor = &#36;game_party.actors[Index]<br />
# actor = &#36;game_actors[ActorID]<br />
<br />
# STEP #2: Use any of the following calls.<br />
# - Check out the current Index of an Element Rate:<br />
# actor.find_element_rate(ElementID)<br />
<br />
# - Check out the current Effect % of an Element:<br />
# actor.element_effect(ElementID)<br />
<br />
# - Change an Actor's Element Rate!  Rate Indices: 1 through 6<br />
# actor.custom_element_rank(ElementID, RateIndex)<br />
<br />
# - Change an Actor's State Rate!    Rate Indices: 1 through 6<br />
# actor.custom_state_rank(StateID, RateIndex)<br />
<br />
# - Move Current Element State 1 Position to the Left<br />
# actor.prev_element_rate!(ElementID)<br />
<br />
# - Move Current Element State 1 Position to the Right<br />
# actor.next_element_rate!(ElementID)<br />
<br />
class Game_Actor<br />
  ER_TABLE = [0,200,150,100,50,0,-100]<br />
  alias :kyon_kust_elem_stt_gm_act_setup :setup<br />
  alias :kyon_kust_elem_stt_gm_act_class_id_set :class_id=<br />
  def setup(actor_id)<br />
    kyon_kust_elem_stt_gm_act_setup(actor_id)<br />
    @element_ranks = {}<br />
    @state_ranks = {}<br />
    custom_element_ranks!<br />
    custom_state_ranks!<br />
  end<br />
<br />
  def custom_element_ranks!<br />
    @element_ranks[@class_id] ||= &#36;data_classes[@class_id].element_ranks.dup<br />
  end<br />
<br />
  def custom_state_ranks!<br />
    @state_ranks[@class_id] ||= &#36;data_classes[@class_id].state_ranks.dup<br />
  end<br />
<br />
  def find_element_rate(elem_id)<br />
    @element_ranks[@class_id][elem_id]<br />
  end<br />
<br />
  def element_effect(elem_id)<br />
    n = find_element_rate(elem_id)<br />
    ER_TABLE[n]<br />
  end<br />
<br />
  def armor_ids<br />
    [@armor1_id, @armor2_id, @armor3_id, @armor4_id]<br />
  end<br />
<br />
  def element_rate(element_id)<br />
    pos = find_element_rate(element_id)<br />
    result = ER_TABLE[pos]<br />
    armor_ids.each do |i|<br />
      armor = &#36;data_armors[i]<br />
      if armor != nil and armor.guard_element_set.include?(element_id)<br />
        result /= 2<br />
      end<br />
    end<br />
    @states.each do |i|<br />
      if &#36;data_states[i].guard_element_set.include?(element_id)<br />
        result /= 2<br />
      end<br />
    end<br />
    return result<br />
  end<br />
<br />
  def state_ranks<br />
    @state_ranks[@class_id]<br />
  end<br />
<br />
  def custom_element_rank(n, value)<br />
    @element_ranks[@class_id][n] = value<br />
  end<br />
<br />
  def custom_state_rank(n, value)<br />
    @state_ranks[@class_id][n] = value<br />
  end<br />
<br />
  def class_id=(class_id)<br />
    class_id_set(class_id)<br />
    custom_element_ranks!<br />
    custom_state_ranks!<br />
  end<br />
<br />
  def change_element_rate(elem_id, value, start)<br />
    pos = find_element_rate(elem_id)<br />
    pos = (pos + value) % 7<br />
    pos = start if pos == 0<br />
    custom_element_rank(elem_id, pos)<br />
    pos<br />
  end<br />
<br />
  def prev_element_rate!(elem_id)<br />
    change_element_rate(elem_id, -1, 6)<br />
  end<br />
<br />
  def next_element_rate!(elem_id)<br />
    change_element_rate(elem_id, 1, 1)<br />
  end<br />
end</code></div></div><br />
<span style="font-weight: bold;" class="mycode_b">Terms &amp; Conditions</span><br />
<br />
Free as in <img src="https://www.save-point.org/images/smilies/ejlol/beer.gif" alt="Beer" title="Beer" class="smilie smilie_189" /> beer.<br />
Mention me in your game credits.<br />
That's it! <img src="https://www.save-point.org/images/smilies/ejlol/tongue.gif" alt="Tongue sticking out" title="Tongue sticking out" class="smilie smilie_24" />]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[The Weekly Gazette 5-24-2026]]></title>
			<link>https://www.save-point.org/thread-13484.html</link>
			<pubDate>Mon, 25 May 2026 04:08:49 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=5">DerVVulfman</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13484.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align">
<img src="https://save-point.org/images/Gazette.png" loading="lazy"  alt="[Image: Gazette.png]" class="mycode_img" /><br />
</div>
<div style="text-align: right;" class="mycode_align">(May 18 to May 24, 2026)<br />
<br />
<a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<br />
Welcome dear readers to the latest issue of the Weekly Gazette!  Here in the Gazette, we give you the news in brief of what occurred in the past week as well as provide any news happening in Save-Point itself<br />
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Official Area</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> General Chat</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> <div style="height: 150px; border:1px solid; padding:4px; margin:1px; overflow:auto;">In this week's <a href="showthread.php?tid=7628"><span class="highlight">News of the World</span></a>, Iran's leadership has finally admitted that the toll has indeed been heavy on their nation. Yet violence still erupts, necessesitating Pakistan to deploy 8000 troops and to help bolster Saudi Arabia, necessitating the Trump administration to apply new economic penalties. And the US President issued one more statement that Iran must give up all nuclear ambitions and the uranium they have before any sanctions relief apears.<br />
<br />
The Russian aggression in Ukraine is spreading, yet no one expected the news that a Russian drone would strike a Chinese Cargo ship just before Russia's President Putin was to meet with China's President. However, it may be related to reports that China's President Xi told the Trump administration it was likely Putin's biggest mistakes. And while Moscow makes claims that Ukraine bombed a college dorm, Russia launched attack after attack, some missiles with depleted uranium warheads poisoning the land and the last one striking Kyiv with 600 drones and salvos of hypersonic missiles.<br />
<br />
Funding fraud was the news of the week, and last week as the Trump Admiinstration initiated a launch into US Taxpayer funded Biolabs outside of the States. The owner of a daycare in the viral Nick Shirley videos was charged for &#36;4.6M in fraud.And in Minnesota, one of the largest-of-its-kind fraud and money laundering schemes paid parents to fake claims of autism in their children for kickbacks, a &#36;46 Million dollar enterprise. Violence has also ensued such as the recent rash of Teen Takovers that have repeatedly turned into brawls, the DC Courts threatening to prosecute the parents of teens that continue these altercations.  After assisting a motorist from Chicago into the nearest hospital, an Indiana Deputy was shot in the hospital by said motorist after realizing a warrent was out. Three teenagers ranging from 15 to 17 have been launching andom shooting sprees in Austin, the eldest identified as an illegal alien. And another attempted shooting appeared at the White House by a gunman whom actually believed he was Jesus Christ.<br />
<br />
Listeners were stunned by the shocking on-air blunder when a radio station claimed that King Charles had passed away. According to the station manager, a computer error incorrectly triggered a protocol required by all UK stations for if and when the ruling Monarch passed away. Meanwhile, Scotland Yard issued a groveling apology to the creator of BBC's "Father Ted" for allegations of hate speech filed by a transgender former cop. The five-month investigation found the investigation itself flawed and no way did the posts call to incite violence.<br />
<br />
Spain considered the hotspot in Europe's sudden flare-up of gonorrhea and syphilis cases, IRGC terrorists planning the reprisal assassination against Ivanka Trump, Canada's Public Broadcaster claiming no responsibility for their TV show that used deceptive tactics to lure and target conservative figures, the sex therapist turned Democrat Candidate blasted for calls of a concentration camp and castrations, Cubans hoping for the downfall of the regime following the US Indictment of Raul Castro, the elimination of Daylight Savings in the US, the activist who sent Ilhan Omar’s daughter and Hasan Piker on Cuba aid convoy having ties to Hamas and Iran, China training Russians to fight in Ukraine, Israeli forces foiling a Hamas shooting in Hebron, the delay in US troop deployment to Poland, the elimination of ISIS's second-in-command, Abu-Bilal al-Minuki, and more hit this week's news.</div>
<span style="font-size: x-small;" class="mycode_size"><span style="font-style: italic;" class="mycode_i">Reduced from 29.9K words down to 563</span></span><br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Games Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Development Discussion</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> For those wondering <a href="showthread.php?tid=395"><span class="highlight">What's up in RMing</span></a>, kyonides found a trailer that finally gave a name to the next RPG Maker engine, that of RPG Maker U2U. Meanwhile, DerVVulfman is analyzing someone's project, discerning what was altered in the base default scripts and performing a little housekeeping. After that, Remi-chan presented two sprites from her lead characterset designer, nearly finished rewrites on the Disc 1 arc and been integrating tab switches that turn on and off around cutscenes. <br />
<br />
This week, Remi-chan showed off a few more of her recent sprite editions in the <a href="showthread.php?tid=2870"><span class="highlight">Maps and Screenshots thread</span></a>, the first two being feline refugees from Earth while the others are feminine and demonic in nature.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Material Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Tools</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> If you are a game developer using RPGMaker XP for your system and want a faster animation speed for your tilesets, the <a href="showthread.php?tid=7370"><span class="highlight">HiddenChest RGSS Player Executable</span></a> can now customize their cycle rate. And if you have need for QuickTime events in your game, kyonides updated the input system while fixing a change key bindong script that had difficulties.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Scripts Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> RPGMaker XP (RGSS) Engine</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> A recent development in <a href="showthread.php?tid=13479"><span class="highlight">KustomPriceShop XP</span></a> by kyonides allows friendship points to become reaised or lowered based upon the goods sold to the stores, and this followed up with the shop possibly gifting the players bonus goods.<br />
<br />
Meanwhile, DerVVulfman's <a href="showthread.php?tid=13480"><span class="highlight">Aced Shops</span></a> also included a relationship system between the player/party and the shops, affected by goods as well as script calls to affect the shops and pricing. After that, he added RPG Advocate's Shop script as an accent.<br />
<br />
</div></div>
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Resources Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> 2D Resources</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> The Syndicate, the Mafia, no better word fits the made men among the <a href="showthread.php?tid=11336"><span class="highlight">Various RMXP sprites by Ace_V</span></a> right now than The Family.  For the third and final member of the Family has a stark redemblance to the last other member of organized crime than the sharp blonde haircut of this made man.<br />
<br />
</div></div>
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Creativity Section</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Art and Design</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Ancient by mortal standards and  a vision of purity and fragile innocents, her porrait has now passed through the forum's museum of art and is displayed in the gallery dedicated towards <a href="showthread.php?tid=8230"><span class="highlight">Remi-chan's Neato Arty thread thing!</span></a>  Her name is Fyori, and this slender sylph is seen at her time of reflection and self-discovery. No longer a wingless girl, timid and afraid as great calamity approached. But not yet the archonfire-filled angel whose nature is sharp and lethal.  Filled with fuschi, grape and pink accented by swathes of celadon, the Queen of Sprites appears, her hand forward as if reaching out as the pink sun of her birth flares behind.  Fyori Felicee is one of Remi-chan's long running characters, being part o f her gaming universe for well over a decade, it took a mere six hours for her illustration to come to life. And the speed draw video Remi-chan provided is naught even nine minutes in length.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Literature</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Her motives are her own, shaped by birth, circumstance and schemes. Her distaste for deceit and capacity to shred duplicity asunder, forged from hollow pledges, trickery and strategems not her own. The six-winged angel of truth laid bare has her page written amongst all those of <a href="showthread.php?tid=8405"><span class="highlight">Remi-chan's Writing Snippets~</span></a> and her predilection towards authenticity anove all else which others fear will topple their sovereignties based upon deception and betrayal.<br />
<br />
</div></div>
<br />
</div>
<br />
Well, that's it for this week.<br />
<br />
“Balding is God's way of showing you are only human... He takes the hair off your head and puts it in your ears.” - Bruce Willis<br />
<br />
<br />
<div style="background:#eebbff;border:4px ridge purple;color: #222222;padding:2px;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">PROSPECTIVE GAZETEERS!</span><br />
<br />
<span style="font-style: italic;" class="mycode_i">If you are the creator of a thread in Save-Point, you have the option of sending/writing your own entry into the Gazette.  The Gazette accepts write-in announcements (which will be doublechecked).  Likewise, the Gazette would welcome other content such as a comic-strip series, ongoing story arc, or the like.  <br />
<br />
Just PM DerVVulfman with the submissions. Submissions must be in by 10pm EST. </span></div>
<div style="text-align: right;" class="mycode_align"><a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<span style="font-size: x-small;" class="mycode_size">Regularly posted  12am (EST) (between Sunday &amp; Monday) based on U.S. Daylight Savings,<br />
4am Monday (UTC), 10pm Sunday(CST/MDT), 6pm Sunday (HST), 6am Monday (CEST),  2pm Monday (AEST) observing daylight savings<br />
5am Monday (UTC), 11pm Sunday(CST), 6pm Sunday (HST), 7am Monday (CET),  3pm Monday (AEST) Not observing daylight savings</span>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align">
<img src="https://save-point.org/images/Gazette.png" loading="lazy"  alt="[Image: Gazette.png]" class="mycode_img" /><br />
</div>
<div style="text-align: right;" class="mycode_align">(May 18 to May 24, 2026)<br />
<br />
<a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<br />
Welcome dear readers to the latest issue of the Weekly Gazette!  Here in the Gazette, we give you the news in brief of what occurred in the past week as well as provide any news happening in Save-Point itself<br />
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Official Area</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> General Chat</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> <div style="height: 150px; border:1px solid; padding:4px; margin:1px; overflow:auto;">In this week's <a href="showthread.php?tid=7628"><span class="highlight">News of the World</span></a>, Iran's leadership has finally admitted that the toll has indeed been heavy on their nation. Yet violence still erupts, necessesitating Pakistan to deploy 8000 troops and to help bolster Saudi Arabia, necessitating the Trump administration to apply new economic penalties. And the US President issued one more statement that Iran must give up all nuclear ambitions and the uranium they have before any sanctions relief apears.<br />
<br />
The Russian aggression in Ukraine is spreading, yet no one expected the news that a Russian drone would strike a Chinese Cargo ship just before Russia's President Putin was to meet with China's President. However, it may be related to reports that China's President Xi told the Trump administration it was likely Putin's biggest mistakes. And while Moscow makes claims that Ukraine bombed a college dorm, Russia launched attack after attack, some missiles with depleted uranium warheads poisoning the land and the last one striking Kyiv with 600 drones and salvos of hypersonic missiles.<br />
<br />
Funding fraud was the news of the week, and last week as the Trump Admiinstration initiated a launch into US Taxpayer funded Biolabs outside of the States. The owner of a daycare in the viral Nick Shirley videos was charged for &#36;4.6M in fraud.And in Minnesota, one of the largest-of-its-kind fraud and money laundering schemes paid parents to fake claims of autism in their children for kickbacks, a &#36;46 Million dollar enterprise. Violence has also ensued such as the recent rash of Teen Takovers that have repeatedly turned into brawls, the DC Courts threatening to prosecute the parents of teens that continue these altercations.  After assisting a motorist from Chicago into the nearest hospital, an Indiana Deputy was shot in the hospital by said motorist after realizing a warrent was out. Three teenagers ranging from 15 to 17 have been launching andom shooting sprees in Austin, the eldest identified as an illegal alien. And another attempted shooting appeared at the White House by a gunman whom actually believed he was Jesus Christ.<br />
<br />
Listeners were stunned by the shocking on-air blunder when a radio station claimed that King Charles had passed away. According to the station manager, a computer error incorrectly triggered a protocol required by all UK stations for if and when the ruling Monarch passed away. Meanwhile, Scotland Yard issued a groveling apology to the creator of BBC's "Father Ted" for allegations of hate speech filed by a transgender former cop. The five-month investigation found the investigation itself flawed and no way did the posts call to incite violence.<br />
<br />
Spain considered the hotspot in Europe's sudden flare-up of gonorrhea and syphilis cases, IRGC terrorists planning the reprisal assassination against Ivanka Trump, Canada's Public Broadcaster claiming no responsibility for their TV show that used deceptive tactics to lure and target conservative figures, the sex therapist turned Democrat Candidate blasted for calls of a concentration camp and castrations, Cubans hoping for the downfall of the regime following the US Indictment of Raul Castro, the elimination of Daylight Savings in the US, the activist who sent Ilhan Omar’s daughter and Hasan Piker on Cuba aid convoy having ties to Hamas and Iran, China training Russians to fight in Ukraine, Israeli forces foiling a Hamas shooting in Hebron, the delay in US troop deployment to Poland, the elimination of ISIS's second-in-command, Abu-Bilal al-Minuki, and more hit this week's news.</div>
<span style="font-size: x-small;" class="mycode_size"><span style="font-style: italic;" class="mycode_i">Reduced from 29.9K words down to 563</span></span><br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Games Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Development Discussion</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> For those wondering <a href="showthread.php?tid=395"><span class="highlight">What's up in RMing</span></a>, kyonides found a trailer that finally gave a name to the next RPG Maker engine, that of RPG Maker U2U. Meanwhile, DerVVulfman is analyzing someone's project, discerning what was altered in the base default scripts and performing a little housekeeping. After that, Remi-chan presented two sprites from her lead characterset designer, nearly finished rewrites on the Disc 1 arc and been integrating tab switches that turn on and off around cutscenes. <br />
<br />
This week, Remi-chan showed off a few more of her recent sprite editions in the <a href="showthread.php?tid=2870"><span class="highlight">Maps and Screenshots thread</span></a>, the first two being feline refugees from Earth while the others are feminine and demonic in nature.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Material Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Tools</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> If you are a game developer using RPGMaker XP for your system and want a faster animation speed for your tilesets, the <a href="showthread.php?tid=7370"><span class="highlight">HiddenChest RGSS Player Executable</span></a> can now customize their cycle rate. And if you have need for QuickTime events in your game, kyonides updated the input system while fixing a change key bindong script that had difficulties.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Scripts Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> RPGMaker XP (RGSS) Engine</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> A recent development in <a href="showthread.php?tid=13479"><span class="highlight">KustomPriceShop XP</span></a> by kyonides allows friendship points to become reaised or lowered based upon the goods sold to the stores, and this followed up with the shop possibly gifting the players bonus goods.<br />
<br />
Meanwhile, DerVVulfman's <a href="showthread.php?tid=13480"><span class="highlight">Aced Shops</span></a> also included a relationship system between the player/party and the shops, affected by goods as well as script calls to affect the shops and pricing. After that, he added RPG Advocate's Shop script as an accent.<br />
<br />
</div></div>
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Resources Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> 2D Resources</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> The Syndicate, the Mafia, no better word fits the made men among the <a href="showthread.php?tid=11336"><span class="highlight">Various RMXP sprites by Ace_V</span></a> right now than The Family.  For the third and final member of the Family has a stark redemblance to the last other member of organized crime than the sharp blonde haircut of this made man.<br />
<br />
</div></div>
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Creativity Section</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Art and Design</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Ancient by mortal standards and  a vision of purity and fragile innocents, her porrait has now passed through the forum's museum of art and is displayed in the gallery dedicated towards <a href="showthread.php?tid=8230"><span class="highlight">Remi-chan's Neato Arty thread thing!</span></a>  Her name is Fyori, and this slender sylph is seen at her time of reflection and self-discovery. No longer a wingless girl, timid and afraid as great calamity approached. But not yet the archonfire-filled angel whose nature is sharp and lethal.  Filled with fuschi, grape and pink accented by swathes of celadon, the Queen of Sprites appears, her hand forward as if reaching out as the pink sun of her birth flares behind.  Fyori Felicee is one of Remi-chan's long running characters, being part o f her gaming universe for well over a decade, it took a mere six hours for her illustration to come to life. And the speed draw video Remi-chan provided is naught even nine minutes in length.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Literature</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Her motives are her own, shaped by birth, circumstance and schemes. Her distaste for deceit and capacity to shred duplicity asunder, forged from hollow pledges, trickery and strategems not her own. The six-winged angel of truth laid bare has her page written amongst all those of <a href="showthread.php?tid=8405"><span class="highlight">Remi-chan's Writing Snippets~</span></a> and her predilection towards authenticity anove all else which others fear will topple their sovereignties based upon deception and betrayal.<br />
<br />
</div></div>
<br />
</div>
<br />
Well, that's it for this week.<br />
<br />
“Balding is God's way of showing you are only human... He takes the hair off your head and puts it in your ears.” - Bruce Willis<br />
<br />
<br />
<div style="background:#eebbff;border:4px ridge purple;color: #222222;padding:2px;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">PROSPECTIVE GAZETEERS!</span><br />
<br />
<span style="font-style: italic;" class="mycode_i">If you are the creator of a thread in Save-Point, you have the option of sending/writing your own entry into the Gazette.  The Gazette accepts write-in announcements (which will be doublechecked).  Likewise, the Gazette would welcome other content such as a comic-strip series, ongoing story arc, or the like.  <br />
<br />
Just PM DerVVulfman with the submissions. Submissions must be in by 10pm EST. </span></div>
<div style="text-align: right;" class="mycode_align"><a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<span style="font-size: x-small;" class="mycode_size">Regularly posted  12am (EST) (between Sunday &amp; Monday) based on U.S. Daylight Savings,<br />
4am Monday (UTC), 10pm Sunday(CST/MDT), 6pm Sunday (HST), 6am Monday (CEST),  2pm Monday (AEST) observing daylight savings<br />
5am Monday (UTC), 11pm Sunday(CST), 6pm Sunday (HST), 7am Monday (CET),  3pm Monday (AEST) Not observing daylight savings</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[KuickTimeEvent XP]]></title>
			<link>https://www.save-point.org/thread-13482.html</link>
			<pubDate>Tue, 19 May 2026 08:20:38 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=1471">kyonides</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13482.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">KuickTimeEvent XP</span></span></div>
<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">by Kyonides</span></span></div>
<br />
<span style="font-weight: bold;" class="mycode_b">Introduction</span><br />
<br />
After releasing HiddenChest version <span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">1.2.10</span></span>, you can now setup custom QTE stuff in your games.<br />
<br />
Two modes are available now:<br />
<ul class="mycode_list"><li>Enter the maximum number of buttons expected by the script call.<br />
</li>
<li>Or enter them before time's up.<br />
</li>
</ul>
<br />
<span style="font-weight: bold;" class="mycode_b">Script Calls:</span><br />
<br />
Set a Button Sequence - Always type Symbols like :Enter, :KeyA or :N1 but not numbers!<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>Input.set_sequence(:Up, :Down, :Enter)</code></div></div><br />
Set a Button Sequence - First Argument is the time in seconds:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>Input.set_sequence_timer(30, :Up, :Down, :Ctrl)</code></div></div><br />
Are both button sequences equal?<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>Input.same_sequence?</code></div></div><br />
Don't forget to clear the sequence contents before you exit your custom scene or QTE stage.<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>Input.clear_button_sequence</code></div></div><br />
<span style="font-weight: bold;" class="mycode_b">The Script</span><br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code># * KuickTimeEvent XP * # <br />
#   Scripter : Kyonides<br />
#   2026-05-19<br />
<br />
class KTEScene<br />
  def main<br />
    @stage = :main<br />
    @help_window = Window_Help.new<br />
    @help_window.set_text("Press Start", 1)<br />
    @bitmap = Bitmap.new(368, 96)<br />
    @result_window = Window_Base.new(120, 128, 400, 128)<br />
    @result_window.contents = @bitmap<br />
    @result_window.visible = false<br />
    Graphics.transition<br />
    while @stage<br />
      Graphics.update<br />
      Input.update<br />
      update<br />
    end<br />
    Graphics.freeze<br />
    dispose<br />
  end<br />
<br />
  def update<br />
    case @stage<br />
    when :main<br />
      if Input.trigger?(:C)<br />
        &#36;game_system.se_play(&#36;data_system.decision_se)<br />
        @help_window.set_text("Enter the button sequence now", 1)<br />
        Input.set_sequence(:Up, :Down, :Left, :Right)<br />
        @stage = :test<br />
      end<br />
      return<br />
    when :test<br />
      unless Input.store_sequence<br />
        &#36;game_system.se_play(&#36;data_system.shop_se)<br />
        @help_window.set_text("The Outcome", 1)<br />
        @stage = :check<br />
        if Input.same_sequence?<br />
          text = "Success!"<br />
        else<br />
          text = "Epic Fail!"<br />
        end<br />
        targets  = "Targets:  " + Input.button_targets.join(", ")<br />
        sequence = "Sequence: " + Input.button_sequence.join(", ")<br />
        rect = @bitmap.rect.dup<br />
        rect.height = 32<br />
        @bitmap.draw_text(rect, text, 1)<br />
        rect.y = 32<br />
        @bitmap.draw_text(rect, targets)<br />
        rect.y = 64<br />
        @bitmap.draw_text(rect, sequence)<br />
        @result_window.visible = true<br />
      end<br />
      return<br />
    when :check<br />
      if Input.trigger_any?<br />
        &#36;game_system.se_play(&#36;data_system.cancel_se)<br />
        Input.clear_button_sequence<br />
        &#36;scene = Scene_Map.new<br />
        return @stage = nil<br />
      end<br />
    end<br />
  end<br />
<br />
  def dispose<br />
    @result_window.dispose<br />
    @help_window.dispose<br />
  end<br />
end</code></div></div><br />
<br />
<span style="font-weight: bold;" class="mycode_b">Terms &amp; Conditions</span><br />
<br />
Free for any kind of game running on the HiddenChest engine. <img src="https://www.save-point.org/images/smilies/ejlol/wink.gif" loading="lazy"  alt="[Image: wink.gif]" class="mycode_img" /> <br />
Due credit is mandatory.<br />
Don't post the contents of this topic anywhere else!<br />
You better paste a link to this thread and make them come here instead.<br />
That's it! <img src="https://www.save-point.org/images/smilies/ejlol/tongue.gif" loading="lazy"  alt="[Image: tongue.gif]" class="mycode_img" />]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">KuickTimeEvent XP</span></span></div>
<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">by Kyonides</span></span></div>
<br />
<span style="font-weight: bold;" class="mycode_b">Introduction</span><br />
<br />
After releasing HiddenChest version <span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">1.2.10</span></span>, you can now setup custom QTE stuff in your games.<br />
<br />
Two modes are available now:<br />
<ul class="mycode_list"><li>Enter the maximum number of buttons expected by the script call.<br />
</li>
<li>Or enter them before time's up.<br />
</li>
</ul>
<br />
<span style="font-weight: bold;" class="mycode_b">Script Calls:</span><br />
<br />
Set a Button Sequence - Always type Symbols like :Enter, :KeyA or :N1 but not numbers!<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>Input.set_sequence(:Up, :Down, :Enter)</code></div></div><br />
Set a Button Sequence - First Argument is the time in seconds:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>Input.set_sequence_timer(30, :Up, :Down, :Ctrl)</code></div></div><br />
Are both button sequences equal?<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>Input.same_sequence?</code></div></div><br />
Don't forget to clear the sequence contents before you exit your custom scene or QTE stage.<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>Input.clear_button_sequence</code></div></div><br />
<span style="font-weight: bold;" class="mycode_b">The Script</span><br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code># * KuickTimeEvent XP * # <br />
#   Scripter : Kyonides<br />
#   2026-05-19<br />
<br />
class KTEScene<br />
  def main<br />
    @stage = :main<br />
    @help_window = Window_Help.new<br />
    @help_window.set_text("Press Start", 1)<br />
    @bitmap = Bitmap.new(368, 96)<br />
    @result_window = Window_Base.new(120, 128, 400, 128)<br />
    @result_window.contents = @bitmap<br />
    @result_window.visible = false<br />
    Graphics.transition<br />
    while @stage<br />
      Graphics.update<br />
      Input.update<br />
      update<br />
    end<br />
    Graphics.freeze<br />
    dispose<br />
  end<br />
<br />
  def update<br />
    case @stage<br />
    when :main<br />
      if Input.trigger?(:C)<br />
        &#36;game_system.se_play(&#36;data_system.decision_se)<br />
        @help_window.set_text("Enter the button sequence now", 1)<br />
        Input.set_sequence(:Up, :Down, :Left, :Right)<br />
        @stage = :test<br />
      end<br />
      return<br />
    when :test<br />
      unless Input.store_sequence<br />
        &#36;game_system.se_play(&#36;data_system.shop_se)<br />
        @help_window.set_text("The Outcome", 1)<br />
        @stage = :check<br />
        if Input.same_sequence?<br />
          text = "Success!"<br />
        else<br />
          text = "Epic Fail!"<br />
        end<br />
        targets  = "Targets:  " + Input.button_targets.join(", ")<br />
        sequence = "Sequence: " + Input.button_sequence.join(", ")<br />
        rect = @bitmap.rect.dup<br />
        rect.height = 32<br />
        @bitmap.draw_text(rect, text, 1)<br />
        rect.y = 32<br />
        @bitmap.draw_text(rect, targets)<br />
        rect.y = 64<br />
        @bitmap.draw_text(rect, sequence)<br />
        @result_window.visible = true<br />
      end<br />
      return<br />
    when :check<br />
      if Input.trigger_any?<br />
        &#36;game_system.se_play(&#36;data_system.cancel_se)<br />
        Input.clear_button_sequence<br />
        &#36;scene = Scene_Map.new<br />
        return @stage = nil<br />
      end<br />
    end<br />
  end<br />
<br />
  def dispose<br />
    @result_window.dispose<br />
    @help_window.dispose<br />
  end<br />
end</code></div></div><br />
<br />
<span style="font-weight: bold;" class="mycode_b">Terms &amp; Conditions</span><br />
<br />
Free for any kind of game running on the HiddenChest engine. <img src="https://www.save-point.org/images/smilies/ejlol/wink.gif" loading="lazy"  alt="[Image: wink.gif]" class="mycode_img" /> <br />
Due credit is mandatory.<br />
Don't post the contents of this topic anywhere else!<br />
You better paste a link to this thread and make them come here instead.<br />
That's it! <img src="https://www.save-point.org/images/smilies/ejlol/tongue.gif" loading="lazy"  alt="[Image: tongue.gif]" class="mycode_img" />]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[The Weekly Gazette 5-17-2026]]></title>
			<link>https://www.save-point.org/thread-13481.html</link>
			<pubDate>Mon, 18 May 2026 04:00:05 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=5">DerVVulfman</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13481.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align">
<img src="https://save-point.org/images/Gazette.png" loading="lazy"  alt="[Image: Gazette.png]" class="mycode_img" /><br />
</div>
<div style="text-align: right;" class="mycode_align">(May 11 to May 17, 2026)<br />
<br />
<a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<br />
Welcome dear readers to the latest issue of the Weekly Gazette!  Here in the Gazette, we give you the news in brief of what occurred in the past week as well as provide any news happening in Save-Point itself<br />
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Official Area</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> General Chat</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> <div style="height: 150px; border:1px solid; padding:4px; margin:1px; overflow:auto;">This week, it was atrocities committed by Iran that his this week's edition of <a href="showthread.php?tid=7628"><span class="highlight">News of the World</span></a>, with the execution of a promising aerospace engineer accused of being both a CIA operative and a member of the Mosaad and the execution of protestor Mohammad Abbasi and the psychological torture inflicted on his family. Tensions flare as the fragile ceasefire appears to be coming to an end with Iran threatening the use of small attack subs while it launches drone strikes at the UAE's Nuclear Power Plant near Abu Dhabi.  But now it is not the US and Israel that has demanded that Iran never have nuclear capabilities, but even Chinese President XI has made that call after talks with US President Trump this past week.<br />
<br />
What was an invasion that was horribly lopsided in favor of Moscow has turned into a nightmare for Russia's Vladimir Putin, the 73-ear old's health being called into question after his very quiet and melancholy appearance during their Victory Day parade last week. With the maelstrom of attacks and relentless missile barrages endured, Ukraine's military strategy of attack drone use took seed and flourished. And now, twenty countries are interested in Ukraine-manufactured drones with contracts already signed by four.  Still, Russia continues to attack while many believe this will be Putin's last year, drone strikes targeting kindergartens just moments after their ceasefire ended, and killing dozens in missile strikes in Kyiv.<br />
<br />
In the US, Democrats are facing backlash as California's Governor Newsome is being called out for not dropping the exorbitant Gas Tax, New York's Governor Hochul for pushing and enflaming the Long Island Rail Road strike for political points. And from prison, the founder of the non-profit Feeding our Futures, has gone on record to say  Rep. Ilhan Omar was indeed aware and involved in the &#36;250 million scam Covid Fraud scam. As towards court drama in the US, former Californian Democratic Mayor Eileen Wang pled guilty  to acting as an illegal agent for the Chinese government. And Democrats are now pleading with the Supreme Court to permit the redistricting that was struck down by Virginia's own Courts that found the redistricting illegal and even said it was before the attempt was made. 31-year-old Elias Rodriguez is facing the death penalty for the Hamas-inspired killing of two Israeli embassy staff members last May. And due to a deadlocked jury, a third mistrial involving disgraced movie mogul Harvey Weinstein over rape charges was declared.<br />
<br />
In the UK, things are not just dreary for Prime Minister Keir Starmer, but grim and desloate as his falling popularity and party losses have his allies turn against him. But despite repeated calls for his resignation, Starmer remains defiant and held off immediate challenges this past week. Also in the UK, a group of protestors waving Palestinian flags called for the assassination of the co-founded the English Defence League and organizer of the "Unite the Kingdom" rally, Tommy Robinson. Caught on camera, the protestors chanted vile messages that included demands that Robinson be assassinated like Turning Point USA founder, Charlie Kirk. And its not a good day for police officers charged with protecting the Royal Family at Windsor Castle, as allegations have been levied against them for leaving their posts and falling asleep on duty.<br />
<br />
The charging of former Cuban Dictator Raul Castro over the shooting down of two  Cessna 337 Skymaster aircrafts in 1996, the bombshell report showing dozens of Hong Kong-based companies have helped Iran evade Western sanctions while funneling money to their terror network, the United Arab Emirates quietly carrying out counter-strikes against a key Iranian oil refinery before the US Iran ceasefire began, drones out of Ukraine torching one of Russia’s biggest explosives plants in an overnight blitz, three more arrested after another anti-Israel mob clashes with counter-protesters near a NYC synagogue, Taiwan's correct insistence it is a soverign and independent nation following the US Chinese talks, violent men in Cuba creating videos with guns and staged fist fights to promote attacks on women who reject them, passengers on board a Disney Cruise Line in Singapore stranded on board with all facilities shut down, and more hit this week's news.</div>
<span style="font-size: x-small;" class="mycode_size"><span style="font-style: italic;" class="mycode_i">Reduced from 14.8K words down to 695</span></span><br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Tech Talk</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> The continuing battle over OpenAI and its broken promise to remain free hit <a href="showthread.php?tid=7678"><span class="highlight">News of the Cyber World</span></a> this week, with some disclosures that Microsoft may have a hand in Sam Altman's choice to make it a for-profit product. And as one battle disastrously ends for Meta, another looms as a Californian court is hitting Facebook with a suit over pushing actual scam advertisements worth billions throughout the US. And both Meta and Google are also on the hotseat as it was revealed they spent millions on advertising safe use of their apps within children's content be it Sesame Street, the Girl Scouts, or the like.  For those seeking internet security, the use of AI Chatbots is not recommended as millions have found themselves haveing been Doxxed, their information publically shared without concent. It is not concent that Iran is demanding of Internet Users, but all their information be it banking, family records, and pledges not to share any information that would harm the regime. Indeed, Iran's current lockdown on the internet is still in force, and those using it are being ordered under duress to post dozens of pro-Iranian content in social media.  The Wayco RoboTaxi recall, dishwashing robots, Musk's settlement with the SEC and more hit this week's cyber-news.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Games Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Development Discussion</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Bustling and bussing were the thoughts if you asked Remi-chan <a href="showthread.php?tid=395"><span class="highlight">What's up in RMing</span></a> as she completed one of the various obstacle maps traversed by one of her game's three sisters. And following some weather twaks, she followed up with rewrites to Disc 2 content, and plans to focus on cutting down some dialogue felt too lengthy. Her characterset artist continued to bustle through work, providing one more police officer sprite and a aprite of a winged maiiden in red. But from that, Remi-chan's portrait artist has to bus back home, he and his family missed the trip to get back home.<br />
<br />
This week, Remi-chan has been working on myriad revisions of her game's dialogue. And in the <a href="showthread.php?tid=2870"><span class="highlight">Maps and screenshots thread</span></a>, you will bare witness.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Material Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Scripts Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Script Requests</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> To enhance his game, Ace_V put forth a detailed and multi-tiered request for a <a href="showthread.php?tid=13478"><span class="highlight">Shop system that buys only specific items</span></a> and much more. Four separate facets in the system as DerVVulfman discovered, and began working upon, detailing the different stages of development and supplyying a demo that initially covered 75% of the requested features. Error reports appeared with some odd issues that showed in Ace_V's attempt to use the software when it worked fine in a released demo. However, DerVVulfman reported he completed the task with a final feature that involved item restocking. It was not long after that kyonides queried if certain messages within shops were necessary and queried if a form of customer appreciation system would be a nice addition.<br />
<br />
</div></div>
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> RPGMaker XP (RGSS) Engine</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> This weekend, kyondes presented for RPGMaker XP users, <a href="showthread.php?tid=13479"><span class="highlight">KustomPriceShop XP</span></a>.  A system that lets game developers use custom prices for individual stores rather than relying upon the costs defined within the database itself. It was not long after that he updated it with a form of shop-keeper client relations system where the more the player purchases from an individual the more appreciative the clerk will be.<br />
<br />
In response to Ace_V's request, DerVVulfman released <a href="showthread.php?tid=13480"><span class="highlight">Aced Shops</span></a> a script he began working upon just days before, and one that fulfilled the requests of a buy-only or sell-only shop, a shop that could carry limited quantities of items that could later be refilled, shops that could set individual prices in opposition to the default database prices, and one that could limit the items that could be sold back. DerVVulfman added a notice that his instructions are rather sparce, but he intends to return to the script later.<br />
<br />
</div></div>
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Resources Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> 2D Resources</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> This week, no brides nor grooms appeared among the <a href="showthread.php?tid=11336"><span class="highlight">Various RMXP sprites by Ace_V</span></a>, no thugs nor goons. Instead, we are gifted some Chinese Koi banners, decorative flags in the shape of Koi, Colorful flags to celebrate China's Children's day, Ace_V originally intended their release last week but was distracted by a hectic schedule where he released his second thug in burgundy.<br />
<br />
</div></div>
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Creativity Section</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Art and Design</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> The gildend doors to the forum's museup opened once more as the gallery dedicated to <a href="showthread.php?tid=8230"><span class="highlight">Remi-chan's Neato Arty thread thing!</span></a> has received one more work, and a seascape at that. But no soft waves gently crest nor ripple for the wooden ships daring to cross. No good are the myriad cannons mounted upon the bow of the frigates aimed at the small femiine figure ahead.  For the small figure is but a miniscule part of the sea itself, a vicious and viscuous that dooms all who crosses,  Rich in lapis and sapphire with surf of ice, the work took an unprecedented seventeen hours to craft, and even the speed draw lasts nearly half an hour to view.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Literature</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Within the forum's library, works continue to flourish. And the pages of <a href="showthread.php?tid=8305"><span class="highlight">Remi-chan's Writing Snippets~</span></a> likewise grow.  An age of sail has been romanticised with tales of pirates and adventure. But for those that sale a sea that is itself alive and hungry, an age of sail is horror and extinction. It is not bleak for those who sail upon a sea of viscuous slime, it is a death sentence. And what makes the scenarior all the more monstrous is that the sea itself is aware and ever hungry.<br />
<br />
</div></div>
<br />
</div>
<br />
Well, that's it for this week.<br />
<br />
“You have to be odd to be number one.” - Theodor Seuss Geisel - Dr. Seuss (1904-1991)<br />
<br />
<br />
<div style="background:#eebbff;border:4px ridge purple;color: #222222;padding:2px;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">PROSPECTIVE GAZETEERS!</span><br />
<br />
<span style="font-style: italic;" class="mycode_i">If you are the creator of a thread in Save-Point, you have the option of sending/writing your own entry into the Gazette.  The Gazette accepts write-in announcements (which will be doublechecked).  Likewise, the Gazette would welcome other content such as a comic-strip series, ongoing story arc, or the like.  <br />
<br />
Just PM DerVVulfman with the submissions. Submissions must be in by 10pm EST. </span></div>
<div style="text-align: right;" class="mycode_align"><a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<span style="font-size: x-small;" class="mycode_size">Regularly posted  12am (EST) (between Sunday &amp; Monday) based on U.S. Daylight Savings,<br />
4am Monday (UTC), 10pm Sunday(CST/MDT), 6pm Sunday (HST), 6am Monday (CEST),  2pm Monday (AEST) observing daylight savings<br />
5am Monday (UTC), 11pm Sunday(CST), 6pm Sunday (HST), 7am Monday (CET),  3pm Monday (AEST) Not observing daylight savings</span>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align">
<img src="https://save-point.org/images/Gazette.png" loading="lazy"  alt="[Image: Gazette.png]" class="mycode_img" /><br />
</div>
<div style="text-align: right;" class="mycode_align">(May 11 to May 17, 2026)<br />
<br />
<a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<br />
Welcome dear readers to the latest issue of the Weekly Gazette!  Here in the Gazette, we give you the news in brief of what occurred in the past week as well as provide any news happening in Save-Point itself<br />
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Official Area</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> General Chat</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> <div style="height: 150px; border:1px solid; padding:4px; margin:1px; overflow:auto;">This week, it was atrocities committed by Iran that his this week's edition of <a href="showthread.php?tid=7628"><span class="highlight">News of the World</span></a>, with the execution of a promising aerospace engineer accused of being both a CIA operative and a member of the Mosaad and the execution of protestor Mohammad Abbasi and the psychological torture inflicted on his family. Tensions flare as the fragile ceasefire appears to be coming to an end with Iran threatening the use of small attack subs while it launches drone strikes at the UAE's Nuclear Power Plant near Abu Dhabi.  But now it is not the US and Israel that has demanded that Iran never have nuclear capabilities, but even Chinese President XI has made that call after talks with US President Trump this past week.<br />
<br />
What was an invasion that was horribly lopsided in favor of Moscow has turned into a nightmare for Russia's Vladimir Putin, the 73-ear old's health being called into question after his very quiet and melancholy appearance during their Victory Day parade last week. With the maelstrom of attacks and relentless missile barrages endured, Ukraine's military strategy of attack drone use took seed and flourished. And now, twenty countries are interested in Ukraine-manufactured drones with contracts already signed by four.  Still, Russia continues to attack while many believe this will be Putin's last year, drone strikes targeting kindergartens just moments after their ceasefire ended, and killing dozens in missile strikes in Kyiv.<br />
<br />
In the US, Democrats are facing backlash as California's Governor Newsome is being called out for not dropping the exorbitant Gas Tax, New York's Governor Hochul for pushing and enflaming the Long Island Rail Road strike for political points. And from prison, the founder of the non-profit Feeding our Futures, has gone on record to say  Rep. Ilhan Omar was indeed aware and involved in the &#36;250 million scam Covid Fraud scam. As towards court drama in the US, former Californian Democratic Mayor Eileen Wang pled guilty  to acting as an illegal agent for the Chinese government. And Democrats are now pleading with the Supreme Court to permit the redistricting that was struck down by Virginia's own Courts that found the redistricting illegal and even said it was before the attempt was made. 31-year-old Elias Rodriguez is facing the death penalty for the Hamas-inspired killing of two Israeli embassy staff members last May. And due to a deadlocked jury, a third mistrial involving disgraced movie mogul Harvey Weinstein over rape charges was declared.<br />
<br />
In the UK, things are not just dreary for Prime Minister Keir Starmer, but grim and desloate as his falling popularity and party losses have his allies turn against him. But despite repeated calls for his resignation, Starmer remains defiant and held off immediate challenges this past week. Also in the UK, a group of protestors waving Palestinian flags called for the assassination of the co-founded the English Defence League and organizer of the "Unite the Kingdom" rally, Tommy Robinson. Caught on camera, the protestors chanted vile messages that included demands that Robinson be assassinated like Turning Point USA founder, Charlie Kirk. And its not a good day for police officers charged with protecting the Royal Family at Windsor Castle, as allegations have been levied against them for leaving their posts and falling asleep on duty.<br />
<br />
The charging of former Cuban Dictator Raul Castro over the shooting down of two  Cessna 337 Skymaster aircrafts in 1996, the bombshell report showing dozens of Hong Kong-based companies have helped Iran evade Western sanctions while funneling money to their terror network, the United Arab Emirates quietly carrying out counter-strikes against a key Iranian oil refinery before the US Iran ceasefire began, drones out of Ukraine torching one of Russia’s biggest explosives plants in an overnight blitz, three more arrested after another anti-Israel mob clashes with counter-protesters near a NYC synagogue, Taiwan's correct insistence it is a soverign and independent nation following the US Chinese talks, violent men in Cuba creating videos with guns and staged fist fights to promote attacks on women who reject them, passengers on board a Disney Cruise Line in Singapore stranded on board with all facilities shut down, and more hit this week's news.</div>
<span style="font-size: x-small;" class="mycode_size"><span style="font-style: italic;" class="mycode_i">Reduced from 14.8K words down to 695</span></span><br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Tech Talk</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> The continuing battle over OpenAI and its broken promise to remain free hit <a href="showthread.php?tid=7678"><span class="highlight">News of the Cyber World</span></a> this week, with some disclosures that Microsoft may have a hand in Sam Altman's choice to make it a for-profit product. And as one battle disastrously ends for Meta, another looms as a Californian court is hitting Facebook with a suit over pushing actual scam advertisements worth billions throughout the US. And both Meta and Google are also on the hotseat as it was revealed they spent millions on advertising safe use of their apps within children's content be it Sesame Street, the Girl Scouts, or the like.  For those seeking internet security, the use of AI Chatbots is not recommended as millions have found themselves haveing been Doxxed, their information publically shared without concent. It is not concent that Iran is demanding of Internet Users, but all their information be it banking, family records, and pledges not to share any information that would harm the regime. Indeed, Iran's current lockdown on the internet is still in force, and those using it are being ordered under duress to post dozens of pro-Iranian content in social media.  The Wayco RoboTaxi recall, dishwashing robots, Musk's settlement with the SEC and more hit this week's cyber-news.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Games Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Development Discussion</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Bustling and bussing were the thoughts if you asked Remi-chan <a href="showthread.php?tid=395"><span class="highlight">What's up in RMing</span></a> as she completed one of the various obstacle maps traversed by one of her game's three sisters. And following some weather twaks, she followed up with rewrites to Disc 2 content, and plans to focus on cutting down some dialogue felt too lengthy. Her characterset artist continued to bustle through work, providing one more police officer sprite and a aprite of a winged maiiden in red. But from that, Remi-chan's portrait artist has to bus back home, he and his family missed the trip to get back home.<br />
<br />
This week, Remi-chan has been working on myriad revisions of her game's dialogue. And in the <a href="showthread.php?tid=2870"><span class="highlight">Maps and screenshots thread</span></a>, you will bare witness.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Material Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Scripts Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Script Requests</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> To enhance his game, Ace_V put forth a detailed and multi-tiered request for a <a href="showthread.php?tid=13478"><span class="highlight">Shop system that buys only specific items</span></a> and much more. Four separate facets in the system as DerVVulfman discovered, and began working upon, detailing the different stages of development and supplyying a demo that initially covered 75% of the requested features. Error reports appeared with some odd issues that showed in Ace_V's attempt to use the software when it worked fine in a released demo. However, DerVVulfman reported he completed the task with a final feature that involved item restocking. It was not long after that kyonides queried if certain messages within shops were necessary and queried if a form of customer appreciation system would be a nice addition.<br />
<br />
</div></div>
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> RPGMaker XP (RGSS) Engine</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> This weekend, kyondes presented for RPGMaker XP users, <a href="showthread.php?tid=13479"><span class="highlight">KustomPriceShop XP</span></a>.  A system that lets game developers use custom prices for individual stores rather than relying upon the costs defined within the database itself. It was not long after that he updated it with a form of shop-keeper client relations system where the more the player purchases from an individual the more appreciative the clerk will be.<br />
<br />
In response to Ace_V's request, DerVVulfman released <a href="showthread.php?tid=13480"><span class="highlight">Aced Shops</span></a> a script he began working upon just days before, and one that fulfilled the requests of a buy-only or sell-only shop, a shop that could carry limited quantities of items that could later be refilled, shops that could set individual prices in opposition to the default database prices, and one that could limit the items that could be sold back. DerVVulfman added a notice that his instructions are rather sparce, but he intends to return to the script later.<br />
<br />
</div></div>
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Resources Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> 2D Resources</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> This week, no brides nor grooms appeared among the <a href="showthread.php?tid=11336"><span class="highlight">Various RMXP sprites by Ace_V</span></a>, no thugs nor goons. Instead, we are gifted some Chinese Koi banners, decorative flags in the shape of Koi, Colorful flags to celebrate China's Children's day, Ace_V originally intended their release last week but was distracted by a hectic schedule where he released his second thug in burgundy.<br />
<br />
</div></div>
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Creativity Section</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Art and Design</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> The gildend doors to the forum's museup opened once more as the gallery dedicated to <a href="showthread.php?tid=8230"><span class="highlight">Remi-chan's Neato Arty thread thing!</span></a> has received one more work, and a seascape at that. But no soft waves gently crest nor ripple for the wooden ships daring to cross. No good are the myriad cannons mounted upon the bow of the frigates aimed at the small femiine figure ahead.  For the small figure is but a miniscule part of the sea itself, a vicious and viscuous that dooms all who crosses,  Rich in lapis and sapphire with surf of ice, the work took an unprecedented seventeen hours to craft, and even the speed draw lasts nearly half an hour to view.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Literature</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Within the forum's library, works continue to flourish. And the pages of <a href="showthread.php?tid=8305"><span class="highlight">Remi-chan's Writing Snippets~</span></a> likewise grow.  An age of sail has been romanticised with tales of pirates and adventure. But for those that sale a sea that is itself alive and hungry, an age of sail is horror and extinction. It is not bleak for those who sail upon a sea of viscuous slime, it is a death sentence. And what makes the scenarior all the more monstrous is that the sea itself is aware and ever hungry.<br />
<br />
</div></div>
<br />
</div>
<br />
Well, that's it for this week.<br />
<br />
“You have to be odd to be number one.” - Theodor Seuss Geisel - Dr. Seuss (1904-1991)<br />
<br />
<br />
<div style="background:#eebbff;border:4px ridge purple;color: #222222;padding:2px;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">PROSPECTIVE GAZETEERS!</span><br />
<br />
<span style="font-style: italic;" class="mycode_i">If you are the creator of a thread in Save-Point, you have the option of sending/writing your own entry into the Gazette.  The Gazette accepts write-in announcements (which will be doublechecked).  Likewise, the Gazette would welcome other content such as a comic-strip series, ongoing story arc, or the like.  <br />
<br />
Just PM DerVVulfman with the submissions. Submissions must be in by 10pm EST. </span></div>
<div style="text-align: right;" class="mycode_align"><a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<span style="font-size: x-small;" class="mycode_size">Regularly posted  12am (EST) (between Sunday &amp; Monday) based on U.S. Daylight Savings,<br />
4am Monday (UTC), 10pm Sunday(CST/MDT), 6pm Sunday (HST), 6am Monday (CEST),  2pm Monday (AEST) observing daylight savings<br />
5am Monday (UTC), 11pm Sunday(CST), 6pm Sunday (HST), 7am Monday (CET),  3pm Monday (AEST) Not observing daylight savings</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Aced Shops]]></title>
			<link>https://www.save-point.org/thread-13480.html</link>
			<pubDate>Sun, 17 May 2026 18:59:31 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=5">DerVVulfman</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13480.html</guid>
			<description><![CDATA[<div align="center"><span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Aced Shops</span></span><br />
<span style="font-size: medium;" class="mycode_size">Version: 1.2</span><br />
<span style="font-size: xx-small;" class="mycode_size">Initial development began 5-16-2026</span></div>
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Introduction</span></span><br />
<br />
This script lets one set up shops that may limit interactions. In general it permits these functions:<ul class="mycode_list"><li>Can make a store that only buys from the player or only does sales.<br />
</li>
<li>Can restrict items sold to inddividual stores based on the item IDs<br />
</li>
<li>Can set up a store to have custom prices for certain items<br />
</li>
<li>Can make a virtual Dynamic Shop with limited goods until restocked<br />
</li>
<li>Can have favorable or dissatisfied reactions affect store prices<br />
<span style="font-style: italic;" class="mycode_i"><span style="font-size: xx-small;" class="mycode_size">I was always a fan of Bethesda Softwork's mercantile price alteration systems</span></span></li>
</ul>
<ul class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">BONUS:</span> Demo includes the "Advanced Shop Status Window" script by RPG Advocate </li>
</ul>
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Demo</span></span><br />
<a href="https://app.box.com/s/lra7bkjqdctvemnzyz0gmsa4stbfpmmb" target="_blank" rel="noopener" class="mycode_url"><span style="font-weight: bold;" class="mycode_b">CLICK HERE</span></a>--  Box.Com link<br />
<span style="font-style: italic;" class="mycode_i">Look for the Download link in the top right of the screen</span><br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Instructions</span></span><br />
On this release, I was barebones on instructions. I will return later with more instructions.<br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">FAQ</span></span><br />
<br />
This was per a request by Ace_V, said request and development found here:<br />
<a href="https://www.save-point.org/thread-13478-lastpost.html" target="_blank" rel="noopener" class="mycode_url">https://www.save-point.org/thread-13478-lastpost.html</a><br />
<br />
While development began initially with RPG Advocate's Buy Only/Sell-Only script, little of it even remains.<br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Compatibility</span></span><br />
<br />
Performs several rewrites throughout the shop system.<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Terms and Conditions</span></span><br />
<br />
Free for use, even in commercial games.  Only due credit is required.]]></description>
			<content:encoded><![CDATA[<div align="center"><span style="font-size: large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Aced Shops</span></span><br />
<span style="font-size: medium;" class="mycode_size">Version: 1.2</span><br />
<span style="font-size: xx-small;" class="mycode_size">Initial development began 5-16-2026</span></div>
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Introduction</span></span><br />
<br />
This script lets one set up shops that may limit interactions. In general it permits these functions:<ul class="mycode_list"><li>Can make a store that only buys from the player or only does sales.<br />
</li>
<li>Can restrict items sold to inddividual stores based on the item IDs<br />
</li>
<li>Can set up a store to have custom prices for certain items<br />
</li>
<li>Can make a virtual Dynamic Shop with limited goods until restocked<br />
</li>
<li>Can have favorable or dissatisfied reactions affect store prices<br />
<span style="font-style: italic;" class="mycode_i"><span style="font-size: xx-small;" class="mycode_size">I was always a fan of Bethesda Softwork's mercantile price alteration systems</span></span></li>
</ul>
<ul class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">BONUS:</span> Demo includes the "Advanced Shop Status Window" script by RPG Advocate </li>
</ul>
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Demo</span></span><br />
<a href="https://app.box.com/s/lra7bkjqdctvemnzyz0gmsa4stbfpmmb" target="_blank" rel="noopener" class="mycode_url"><span style="font-weight: bold;" class="mycode_b">CLICK HERE</span></a>--  Box.Com link<br />
<span style="font-style: italic;" class="mycode_i">Look for the Download link in the top right of the screen</span><br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Instructions</span></span><br />
On this release, I was barebones on instructions. I will return later with more instructions.<br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">FAQ</span></span><br />
<br />
This was per a request by Ace_V, said request and development found here:<br />
<a href="https://www.save-point.org/thread-13478-lastpost.html" target="_blank" rel="noopener" class="mycode_url">https://www.save-point.org/thread-13478-lastpost.html</a><br />
<br />
While development began initially with RPG Advocate's Buy Only/Sell-Only script, little of it even remains.<br />
<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Compatibility</span></span><br />
<br />
Performs several rewrites throughout the shop system.<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Terms and Conditions</span></span><br />
<br />
Free for use, even in commercial games.  Only due credit is required.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[KustomPriceShop XP]]></title>
			<link>https://www.save-point.org/thread-13479.html</link>
			<pubDate>Sun, 17 May 2026 07:20:19 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=1471">kyonides</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13479.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">KustomPriceShop XP</span></span></div>
<br />
<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">by Kyonides</span></span></div>
<br />
<span style="font-weight: bold;" class="mycode_b">Introduction</span><br />
<br />
This script allows you to open a special shop on a given map that offers:<br />
<ul class="mycode_list"><li>Setting custom (buy or sale) prices for specific items.<br />
</li>
<li>Setting certain goods as highly undesirable, making the party lose friendship points at that shop.<br />
</li>
<li>Rewarding loyal customers with free gifts if they buy a given amount of items or weapons or armors.<br />
</li>
<li>Creating buy-only or sell-only shops.<br />
</li>
</ul>
<br />
To keep it separate from normal shops, set the shop's ID via a game variable.<br />
<br />
You can change the maximum number of units per item allowed in your game.<br />
<br />
Leaving the shop without doing anything will decrease the shop's friendship points by 1 (default value).<br />
Purchases and sales will increase those points in no time! <img src="https://www.save-point.org/images/smilies/ejlol/shocked.gif" alt="Shocked" title="Shocked" class="smilie smilie_22" /> <br />
<br />
It also lets you to set a backdrop as well instead of the current map.<br />
<br />
<div class="tborder">
  			<div class="thead" style="padding:4px; margin:1px;"><input type="button" class="button" value="+" style="font-family:Monospace; padding:0px" onclick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].style.display=='none'){ this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='';this.value='-';} else {this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='none';this.value='+';}"/> SCREENSHOTS</div>
  			<div class="trow2" style="display:none; padding:4px; margin:1px;">
<div style="text-align: center;" class="mycode_align"><img src="https://i.postimg.cc/d04B4wFx/kustompriceshop-xp001.jpg" loading="lazy"  alt="[Image: kustompriceshop-xp001.jpg]" class="mycode_img" /></div>
<div style="text-align: center;" class="mycode_align"><img src="https://i.postimg.cc/252w2rYt/kustompriceshop-xp002.jpg" loading="lazy"  alt="[Image: kustompriceshop-xp002.jpg]" class="mycode_img" /></div>
</div>
		</div>
<br />
<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">Optional Script Calls For The Active Shop</span></span></div>
<br />
<span style="font-weight: bold;" class="mycode_b">NOTE:</span> ItemID stands for an actual positive number, starting from 1 onwards.<br />
<br />
Add Items with Custom Prices:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>buy_price_items(ItemID1 =&gt; Price1, etc.)<br />
sell_price_items(ItemID1 =&gt; Price1, etc.)</code></div></div><br />
Add Weapons with Custom Prices:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>buy_price_weapons(WeaponID1 =&gt; Price1, etc.)<br />
sell_price_weapons(WeaponID1 =&gt; Price1, etc.)</code></div></div><br />
Add Armors with Custom Prices:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>buy_price_armors(ArmorID1 =&gt; Price1, etc.)<br />
sell_price_armors(ArmorID1 =&gt; Price1, etc.)</code></div></div><br />
Change Custom Price Shop's Friendship Points - Number stands for any number, either positive or negative.<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>price_shop_friend_points(Number)</code></div></div><br />
Set Minimum Friendship Level for Certain Items, Weapons or Armors - Types: 0 - Item, 1 - Weapon, 2 - Armor<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>price_shop_friendship_min(Mininum, Type, ItemID1, etc.)</code></div></div><br />
Set the Lowest Level The Friendship Points can reach: Number should be equal to 0 or less.<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>price_shop_friend_floor(Number)</code></div></div><br />
Change Custom Price Shop's No Transaction Penalty - Number stands for 0 or any positive number. Default Value: 1.<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>price_shop_set_no_action_penalty(Number)</code></div></div><br />
Reward Your Loyal Customers with Items:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>buy_gifts_items(ItemID, ItemsMin, GiftItemID, Number)</code></div></div><br />
Reward Your Loyal Customers with Weapons:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>buy_gifts_weapons(ItemID, ItemsMin, GiftItemID, Number)</code></div></div><br />
Reward Your Loyal Customers with Armors:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>buy_gifts_armors(ItemID, ItemsMin, GiftItemID, Number)</code></div></div><br />
Punish the Player for Selling the "Wrong" Items: LostPoints stands for 1 or above.<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>sell_price_wrong_items(ItemID1 =&gt; LostPoints, etc.)</code></div></div><br />
Punish the Player for Selling the "Wrong" Weapons:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>sell_price_wrong_weapons(WeaponID1 =&gt; LostPoints, etc.)</code></div></div><br />
Punish the Player for Selling the "Wrong" Armors:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>sell_price_wrong_armors(ArmorID1 =&gt; LostPoints, etc.)</code></div></div><br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">The Script</span></span><br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code># * KustomPriceShop XP * #<br />
#   Scripter : Kyonides<br />
#   v1.0.0 - 2026-05-23<br />
<br />
# Create a special shop that offers:<br />
# - Setting custom prices for specific items.<br />
# - Setting certain goods as highly undesirable, making the party lose<br />
#   friendship points at that shop.<br />
# - Rewarding loyal customers with free gifts if they buy a given amount of<br />
#   items or weapons or armors.<br />
# - Creating purchase-only or sell-only shops.<br />
<br />
# To keep it separate from normal shops, set the shop's ID via a game variable.<br />
# You can change the maximum number of units per item allowed in your game.<br />
# It also allows you to set a backdrop as well instead of the current map.<br />
# Leaving the shop without doing anything will decrease the shop's friendship<br />
# points by 1 (default value).<br />
<br />
# * Optional Script Calls For The Active Shop * #<br />
<br />
# - Add Items with Custom Prices:<br />
# buy_price_items(ItemID1 =&gt; Price1, etc.)<br />
# sell_price_items(ItemID1 =&gt; Price1, etc.)<br />
<br />
# - Add Weapons with Custom Prices:<br />
# buy_price_weapons(WeaponID1 =&gt; Price1, etc.)<br />
# sell_price_weapons(WeaponID1 =&gt; Price1, etc.)<br />
<br />
# - Add Armors with Custom Prices:<br />
# buy_price_armors(ArmorID1 =&gt; Price1, etc.)<br />
# sell_price_armors(ArmorID1 =&gt; Price1, etc.)<br />
<br />
# - Change Custom Price Shop's Friendship Points:<br />
#   Number stands for any number, either positive or negative.<br />
# price_shop_friend_points(Number)<br />
<br />
# - Set Minimum Friendship Level for Certain Items, Weapons or Armors:<br />
#   Types: 0 - Item, 1 - Weapon, 2 - Armor<br />
# price_shop_friendship_min(Mininum, Type, ItemID1, etc.)<br />
<br />
# - Set the Lowest Level The Friendship Points can reach: 0 or less.<br />
# price_shop_friend_floor(Number)<br />
<br />
# - Change Custom Price Shop's No Transaction Penalty:<br />
#   Number stands for 0 or any positive number. Default Value: 1.<br />
# price_shop_set_no_action_penalty(Number)<br />
<br />
# - Reward Your Loyal Customers with Items:<br />
# buy_gifts_items(ItemID, ItemsMin, GiftItemID, Number)<br />
<br />
# - Reward Your Loyal Customers with Weapons:<br />
# buy_gifts_weapons(ItemID, ItemsMin, GiftItemID, Number)<br />
<br />
# - Reward Your Loyal Customers with Armors:<br />
# buy_gifts_armors(ItemID, ItemsMin, GiftItemID, Number)<br />
<br />
# - Punish the Player for Selling the Wrong Items:<br />
# sell_price_wrong_items(ItemID1 =&gt; LostPoints, etc.)<br />
<br />
# - Punish the Player for Selling the Wrong Weapons:<br />
# sell_price_wrong_weapons(WeaponID1 =&gt; LostPoints, etc.)<br />
<br />
# - Punish the Player for Selling the Wrong Armors:<br />
# sell_price_wrong_armors(ArmorID1 =&gt; LostPoints, etc.)<br />
<br />
module KustomPrice<br />
  ITEM_MAX = 99<br />
  BUY_ONLY_SWITCH  = 8<br />
  SELL_ONLY_SWITCH = 9<br />
  SHOP_ID_VAR = 10<br />
  DEFAULT_BACKDROP = "012-PortTown02"<br />
  FRIENDSHIP_LEVEL = "Friendship Level: %s"<br />
  SPECIAL_REWARDS  = "Special Rewards"<br />
<br />
  class Shop<br />
    class Gifts<br />
      def initialize(item_min, item_id, n)<br />
        @item_min = item_min<br />
        @item_id = item_id<br />
        @amount = n<br />
      end<br />
      attr_reader :item_min, :item_id, :amount<br />
    end<br />
<br />
    def initialize<br />
      @friendship = 0<br />
      @friendship_floor = 0<br />
      @no_action_penalty = 1<br />
      @friendship_min = {}<br />
      @buy_prices = {}<br />
      @sell_prices = {}<br />
      @buy_item_max = {}<br />
      @sell_item_max = {}<br />
      @buy_gifts = {}<br />
      @sell_wrong_goods = {}<br />
      @friendship_min.default = {}<br />
      @buy_prices.default = {}<br />
      @sell_prices.default = {}<br />
      @buy_gifts.default = {}<br />
      @sell_wrong_goods.default = {}<br />
      @buy_item_max.default = ITEM_MAX<br />
      @sell_item_max.default = ITEM_MAX<br />
    end<br />
<br />
    def friendship=(n)<br />
      @friendship = [@friendship + n, @friendship_floor].max<br />
    end<br />
<br />
    def no_action_penalty!<br />
      self.friendship -= @no_action_penalty<br />
    end<br />
<br />
    def frienship_min(mininum, type, *items)<br />
      fmin = @friendship_min[type]<br />
      items.flatten.each {|n| fmin[n] = mininum }<br />
      mininum<br />
    end<br />
<br />
    def set_buy_prices(type, data={})<br />
      @buy_prices[type].merge!(data)<br />
    end<br />
<br />
    def set_sell_prices(type, data={})<br />
      @sell_prices[type].merge!(data)<br />
    end<br />
<br />
    def set_buy_gifts(type, parent_id, item_min, item_id, n)<br />
      @buy_gifts[type][parent_id] = Gifts.new(item_min, item_id, n)<br />
    end<br />
<br />
    def sell_wrong_goods(type, data={})<br />
      @sell_wrong_goods[type].merge!(data)<br />
    end<br />
    attr_reader :friendship, :friendship_floor, :friendship_min<br />
    attr_reader :buy_prices, :sell_prices, :buy_gifts<br />
    attr_reader :buy_item_max, :sell_item_max, :sell_wrong_goods<br />
    attr_accessor :goods, :no_action_penalty<br />
  end<br />
end<br />
<br />
class Game_System<br />
  alias :kyon_kp_shop_gm_sys_init :initialize<br />
  def initialize<br />
    kyon_kp_shop_gm_sys_init<br />
    reset_price_shop_id!<br />
    @custom_price_shops = {}<br />
  end<br />
<br />
  def reset_price_shop_id!<br />
    @price_shop_id = 0<br />
  end<br />
<br />
  def init_price_shop(shop_id)<br />
    @price_shop_id = shop_id<br />
    @custom_price_shops[shop_id] ||= KustomPrice::Shop.new<br />
  end<br />
<br />
  def setup_price_shop(shop_id, new_goods)<br />
    shop = @custom_price_shops[shop_id]<br />
    shop.goods = new_goods<br />
  end<br />
<br />
  def this_price_shop<br />
    @custom_price_shops[@price_shop_id]<br />
  end<br />
  attr_reader :custom_price_shops<br />
end<br />
<br />
class Game_Party<br />
  def bag_items<br />
    @items<br />
  end<br />
<br />
  def bag_weapons<br />
    @weapons<br />
  end<br />
<br />
  def bag_armors<br />
    @armors<br />
  end<br />
<br />
  def compact_bag_items!<br />
    @items.delete_if {|k,v| v == 0 }<br />
    @weapons.delete_if {|k,v| v == 0 }<br />
    @armors.delete_if {|k,v| v == 0 }<br />
  end<br />
end<br />
<br />
class Window_ShopCommand<br />
  def reset_disabled_items<br />
    @disabled = []<br />
  end<br />
<br />
  def disable_current_item?<br />
    @disabled[@index]<br />
  end<br />
end<br />
<br />
module KustomPrice<br />
  module AddMethods<br />
    def item<br />
      @data[@index] || @no_item<br />
    end<br />
<br />
    def price<br />
      @prices[@index] || 0<br />
    end<br />
<br />
    def type<br />
      @types[@index] || 0<br />
    end<br />
<br />
    def get_price(n, item_id, price)<br />
      case @types[n]<br />
      when 0<br />
        @item_prices[item_id] || price<br />
      when 1<br />
        @weapon_prices[item_id] || price<br />
      when 2<br />
        @armor_prices[item_id] || price<br />
      end<br />
    end<br />
  end<br />
<br />
class ShopBuyWindow &lt; Window_Selectable<br />
  include AddMethods<br />
  attr_accessor :shop_goods<br />
  def initialize(shop, shop_goods)<br />
    w = 368<br />
    @tw = w - 64<br />
    super(0, 288, w, 192)<br />
    sp = shop.buy_prices<br />
    @item_prices   = sp[0]<br />
    @weapon_prices = sp[1]<br />
    @armor_prices  = sp[2]<br />
    @shop_goods = shop_goods.dup<br />
    @no_item = RPG::Item.new<br />
    @transparent = Color.new(0, 0, 0, 0)<br />
    @symbol_color = Color.new(255, 255, 80)<br />
    @symbol = &#36;data_system.words.gold<br />
    refresh<br />
    self.index = 0<br />
  end<br />
<br />
  def item_name<br />
    self.item.name<br />
  end<br />
<br />
  def set_goods(goods_item)<br />
    type, goods_id = goods_item<br />
    case type<br />
    when 0<br />
      [type, &#36;data_items[goods_id]]<br />
    when 1<br />
      [type, &#36;data_weapons[goods_id]]<br />
    when 2<br />
      [type, &#36;data_armors[goods_id]]<br />
    end<br />
  end<br />
<br />
  def refresh<br />
    if self.contents != nil<br />
      self.contents.dispose<br />
      self.contents = nil<br />
    end<br />
    @types = []<br />
    @data = []<br />
    @prices = []<br />
    for goods_item in @shop_goods<br />
      type, item = set_goods(goods_item)<br />
      next unless item<br />
      n = @types.size<br />
      @types &lt;&lt; type<br />
      @data &lt;&lt; item<br />
      @prices &lt;&lt; get_price(n, item.id, item.price)<br />
    end<br />
    draw_items<br />
  end<br />
<br />
  def draw_items<br />
    @item_max = @data.size<br />
    self.contents = Bitmap.new(width - 32, row_max * 32) if @item_max &gt; 0<br />
    @item_max.times {|i| draw_item(i) }<br />
  end<br />
<br />
  def clear_line(rx, ry)<br />
    rect = Rect.new(rx, ry, self.width - 32, 32)<br />
    self.contents.fill_rect(rect, @transparent)<br />
  end<br />
<br />
  def draw_item(n)<br />
    item = @data[n]<br />
    font = self.contents.font<br />
    price = @prices[n]<br />
    if &#36;game_party.gold &gt;= price<br />
      font.color = normal_color<br />
      alpha = 255<br />
    else<br />
      font.color = disabled_color<br />
      alpha = 128<br />
    end<br />
    ry = n * 32<br />
    clear_line(4, ry)<br />
    bitmap = RPG::Cache.icon(item.icon_name)<br />
    self.contents.blt(28, ry + 4, bitmap, Rect.new(0, 0, 24, 24), alpha)<br />
    self.contents.draw_text(56, ry, @tw - 100, 32, item.name)<br />
    self.contents.draw_text(@tw - 92, ry, 100, 32, price.to_s, 2)<br />
    @symbol_color.alpha = alpha<br />
    font.color = @symbol_color<br />
    self.contents.draw_text(@tw, ry, 24, 32, @symbol, 2)<br />
  end<br />
<br />
  def update_help<br />
    @help_window.set_text(self.item.description)<br />
  end<br />
<br />
  def delete_item<br />
    @shop_goods.delete(@index)<br />
    item = @data.delete(@index)<br />
    self.contents.dispose if self.contents != nil<br />
    self.contents = nil<br />
    draw_items<br />
  end<br />
<br />
  def disable_item(n)<br />
    draw_item(n, disabled_color)<br />
    @disabled[n] = true<br />
  end<br />
end<br />
<br />
class ShopSellWindow &lt; Window_Selectable<br />
  include AddMethods<br />
  def initialize(shop)<br />
    super(0, 128, 640, 352)<br />
    @column_max = 2<br />
    @no_item = RPG::Item.new<br />
    sp = shop.sell_prices<br />
    @item_prices   = sp[0]<br />
    @weapon_prices = sp[1]<br />
    @armor_prices  = sp[2]<br />
    refresh<br />
    self.index = 0<br />
  end<br />
<br />
  def refresh<br />
    if self.contents != nil<br />
      self.contents.dispose<br />
      self.contents = nil<br />
    end<br />
    @types = []<br />
    @data = []<br />
    @prices = []<br />
    n = 0<br />
    &#36;game_party.bag_items.sort.each do |k,v|<br />
      next if &#36;game_party.item_number(k) == 0<br />
      @types &lt;&lt; 0<br />
      @data &lt;&lt; obj = &#36;data_items[k]<br />
      @prices &lt;&lt; get_price(n, k, obj.price / 2)<br />
      n += 1<br />
    end<br />
    &#36;game_party.bag_weapons.sort.each do |k,v|<br />
      next if &#36;game_party.weapon_number(i) == 0<br />
      @types &lt;&lt; 1<br />
      @data &lt;&lt; obj = &#36;data_weapons[k]<br />
      @prices &lt;&lt; get_price(n, k, obj.price / 2)<br />
      n += 1<br />
    end<br />
    &#36;game_party.bag_armors.sort.each do |k,v|<br />
      next if &#36;game_party.armor_number(i) == 0<br />
      @types &lt;&lt; 2<br />
      @data &lt;&lt; obj = &#36;data_armors[k]<br />
      @prices &lt;&lt; get_price(n, k, obj.price / 2)<br />
      n += 1<br />
    end<br />
    @item_max = @data.size<br />
    return if @item_max == 0<br />
    self.contents = Bitmap.new(width - 32, row_max * 32)<br />
    @item_max.times {|n| draw_item(n) }<br />
  end<br />
<br />
  def draw_item(n)<br />
    item = @data[n]<br />
    case item<br />
    when RPG::Item<br />
      number = &#36;game_party.item_number(item.id)<br />
    when RPG::Weapon<br />
      number = &#36;game_party.weapon_number(item.id)<br />
    when RPG::Armor<br />
      number = &#36;game_party.armor_number(item.id)<br />
    end<br />
    price = @prices[n]<br />
    if price &gt; 0<br />
      self.contents.font.color = normal_color<br />
    else<br />
      self.contents.font.color = disabled_color<br />
    end<br />
    x = 4 + n % 2 * (288 + 32)<br />
    y = n / 2 * 32<br />
    rect = Rect.new(x, y, self.width / @column_max - 32, 32)<br />
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))<br />
    bitmap = RPG::Cache.icon(item.icon_name)<br />
    opacity = self.contents.font.color == normal_color ? 255 : 128<br />
    self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)<br />
    self.contents.draw_text(x + 28, y, 212, 32, item.name, 0)<br />
    self.contents.draw_text(x + 240, y, 16, 32, ":", 1)<br />
    self.contents.draw_text(x + 256, y, 24, 32, number.to_s, 2)<br />
  end<br />
<br />
  def update_help<br />
    @help_window.set_text(self.item.description)<br />
  end<br />
end<br />
<br />
class ShopGiftWindow &lt; Window_Selectable<br />
  def initialize<br />
    super(160, 144, 320, 128)<br />
    @w = width - 32<br />
    @h = height - 32<br />
    @types = []<br />
    @gifts = []<br />
    @amounts = []<br />
    @pages = 0<br />
    @index = 0<br />
  end<br />
<br />
  def set_gifts(list)<br />
    list.each do |type, gift, n|<br />
      @types &lt;&lt; type<br />
      @gifts &lt;&lt; gift<br />
      @amounts &lt;&lt; n<br />
    end<br />
    @pages = list.size<br />
    refresh<br />
  end<br />
<br />
  def change_page(n)<br />
    return if @pages == 1<br />
    @index = (@index + n) % @pages<br />
    refresh<br />
  end<br />
<br />
  def refresh<br />
    page = @index + 1<br />
    label = "Page " + page.to_s + "/" + @pages.to_s<br />
    n = @amounts[@index]<br />
    b = Bitmap.new(@w, @h)<br />
    font = b.font<br />
    font.color = system_color<br />
    b.draw_text(0, 0, @w, 32, SPECIAL_REWARDS, 1)<br />
    good = get_good<br />
    font.color = normal_color<br />
    b.draw_text(0, 32, @w, 32, good.name)<br />
    b.draw_text(0, 32, @w, 32, n.to_s, 2)<br />
    b.draw_text(0, 64, @w, 32, label, 2)<br />
    self.contents = b<br />
  end<br />
<br />
  def get_good<br />
    item_id = @gifts[@index]<br />
    case @types[@index]<br />
    when 0<br />
      return &#36;data_items[item_id]<br />
    when 1<br />
      return &#36;data_weapons[item_id]<br />
    when 2<br />
      return &#36;data_armors[item_id]<br />
    end<br />
  end<br />
end<br />
<br />
end<br />
<br />
class Interpreter<br />
  alias :kyon_kp_shop_int_chng_vars :command_122<br />
  def command_122<br />
    kyon_kp_shop_int_chng_vars<br />
    var_id = @parameters[0]<br />
    return unless KustomPrice::SHOP_ID_VAR == var_id<br />
    var_id = @parameters[4]<br />
    @price_shop = &#36;game_system.init_price_shop(var_id)<br />
  end<br />
<br />
  def price_shop_friend_points(n)<br />
    @price_shop.friendship += n<br />
  end<br />
<br />
  def price_shop_friend_floor(n)<br />
    @price_shop.friendship_floor = n<br />
  end<br />
<br />
  def price_shop_friendship_min(min, type, *items)<br />
    @price_shop.frienship_min(min, type, *items)<br />
  end<br />
<br />
  def price_shop_set_no_action_penalty(n)<br />
    @price_shop.no_action_penalty = n<br />
  end<br />
<br />
  def buy_price_items(data={})<br />
    @price_shop.set_buy_prices(0, data)<br />
  end<br />
<br />
  def buy_price_weapons(data={})<br />
    @price_shop.set_buy_prices(1, data)<br />
  end<br />
<br />
  def buy_price_armors(data={})<br />
    @price_shop.set_buy_prices(2, data)<br />
  end<br />
<br />
  def sell_price_items(data={})<br />
    @price_shop.set_sell_prices(0, data)<br />
  end<br />
<br />
  def sell_price_weapons(data={})<br />
    @price_shop.set_sell_prices(1, data)<br />
  end<br />
<br />
  def sell_price_armors(data={})<br />
    @price_shop.set_sell_prices(2, data)<br />
  end<br />
<br />
  def buy_gifts_items(item_id, item_min, gift_item_id, n)<br />
    @price_shop.set_buy_gifts(0, item_id, item_min, gift_item_id, n)<br />
  end<br />
<br />
  def buy_gifts_weapons(item_id, item_min, gift_item_id, n)<br />
    @price_shop.set_buy_gifts(1, item_id, item_min, gift_item_id, n)<br />
  end<br />
<br />
  def buy_gifts_armors(item_id, item_min, gift_item_id, n)<br />
    @price_shop.set_buy_gifts(2, item_id, item_min, gift_item_id, n)<br />
  end<br />
  <br />
  def sell_price_wrong_items(data={})<br />
    @price_shop.sell_wrong_goods(0, data)<br />
  end<br />
<br />
  def sell_price_wrong_weapons(data={})<br />
    @price_shop.sell_wrong_goods(1, data)<br />
  end<br />
<br />
  def sell_price_wrong_armors(data={})<br />
    @price_shop.sell_wrong_goods(2, data)<br />
  end<br />
end<br />
<br />
class Scene_Map<br />
  def call_shop<br />
    &#36;game_temp.shop_calling = false<br />
    &#36;game_player.straighten<br />
    shop_var = KustomPrice::SHOP_ID_VAR<br />
    if &#36;game_variables[shop_var] != 0<br />
      &#36;scene = PriceShopScene.new<br />
    else<br />
      &#36;scene = Scene_Shop.new<br />
    end<br />
  end<br />
end<br />
<br />
class PriceShopScene &lt; Scene_Shop<br />
  include KustomPrice<br />
  def find_shop_id<br />
    &#36;game_variables[SHOP_ID_VAR]<br />
  end<br />
<br />
  def main<br />
    prepare_goods<br />
    make_backdrop<br />
    make_windows<br />
    Graphics.transition<br />
    loop do<br />
      Graphics.update<br />
      Input.update<br />
      update<br />
      if &#36;scene != self<br />
        break<br />
      end<br />
    end<br />
    Graphics.freeze<br />
    dispose_windows<br />
    reset_price_shop<br />
  end<br />
<br />
  def prepare_goods<br />
    &#36;game_party.compact_bag_items!<br />
    @transactions = 0<br />
    @shop_id = find_shop_id<br />
    @shop = &#36;game_system.this_price_shop<br />
    @fp = @shop.friendship<br />
    @fp_min = @shop.friendship_min<br />
    @goods = @shop.goods || &#36;game_temp.shop_goods<br />
    setup_friendly_goods<br />
  end<br />
<br />
  def setup_friendly_goods<br />
    @gifts = []<br />
    @shop_goods = []<br />
    @goods.each do |type, obj_id|<br />
      group = @fp_min[type]<br />
      level = group[obj_id] || 0<br />
      @shop_goods &lt;&lt; [type, obj_id] if level == 0 or level &lt;= @fp<br />
    end<br />
    @exclude_goods = @shop_goods.size != @goods.size<br />
  end<br />
<br />
  def make_backdrop<br />
    @backdrop = Sprite.new<br />
    @backdrop.bitmap = RPG::Cache.battleback(DEFAULT_BACKDROP)<br />
  end<br />
<br />
  def make_windows<br />
    @help_window = Window_Help.new<br />
    show_friendship_level<br />
    @command_window = Window_ShopCommand.new<br />
    @command_window.reset_disabled_items<br />
    @command_window.disable_item(0) if &#36;game_switches[SELL_ONLY_SWITCH]<br />
    @command_window.disable_item(1) if &#36;game_switches[BUY_ONLY_SWITCH]<br />
    @gold_window = Window_Gold.new<br />
    @gold_window.x = 480<br />
    @gold_window.y = 64<br />
    @dummy_window = Window_Base.new(0, 288, 640, 192)<br />
    @buy_window = ShopBuyWindow.new(@shop, @shop_goods)<br />
    @buy_window.active = false<br />
    @buy_window.visible = false<br />
    @buy_window.help_window = @help_window<br />
    @sell_window = ShopSellWindow.new(@shop)<br />
    @sell_window.active = false<br />
    @sell_window.visible = false<br />
    @sell_window.help_window = @help_window<br />
    @number_window = Window_ShopNumber.new<br />
    @number_window.active = false<br />
    @number_window.visible = false<br />
    @status_window = Window_ShopStatus.new<br />
    @status_window.visible = false<br />
    @gift_window = ShopGiftWindow.new<br />
    @gift_window.visible = false<br />
  end<br />
<br />
  def show_friendship_level<br />
    points = @shop.friendship.to_s<br />
    points = sprintf(FRIENDSHIP_LEVEL, points)<br />
    @help_window.set_text(points)<br />
  end<br />
<br />
  def update<br />
    if @show_gifts<br />
      update_show_gifts<br />
      return<br />
    end<br />
    super<br />
  end<br />
<br />
  def update_show_gifts<br />
    if Input.trigger?(Input::B) or Input.trigger?(Input::C)<br />
      &#36;game_system.se_play(&#36;data_system.cancel_se)<br />
      &#36;scene = Scene_Map.new<br />
      return @show_gifts = nil<br />
    elsif Input.trigger?(Input::LEFT)<br />
      &#36;game_system.se_play(&#36;data_system.cursor_se)<br />
      @gift_window.change_page(-1)<br />
      return<br />
    elsif Input.trigger?(Input::RIGHT)<br />
      &#36;game_system.se_play(&#36;data_system.cursor_se)<br />
      @gift_window.change_page(1)<br />
    end<br />
  end<br />
<br />
  def update_command<br />
    if Input.trigger?(Input::B)<br />
      if @get_gifts<br />
        &#36;game_system.se_play(&#36;data_system.shop_se)<br />
        @command_window.index = -1<br />
        @gift_window.set_gifts(@gifts)<br />
        @gift_window.visible = true<br />
        Graphics.screenshot<br />
        @get_gifts = nil<br />
        return @show_gifts = true<br />
      else<br />
        &#36;game_system.se_play(&#36;data_system.cancel_se)<br />
        &#36;scene = Scene_Map.new<br />
      end<br />
      return<br />
    elsif Input.trigger?(Input::C)<br />
      if @command_window.disable_current_item?<br />
        &#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
        return<br />
      end<br />
      case @command_window.index<br />
      when 0<br />
        open_purchase<br />
      when 1<br />
        open_sale<br />
      when 2<br />
        &#36;game_system.se_play(&#36;data_system.decision_se)<br />
        &#36;scene = Scene_Map.new<br />
      end<br />
    end<br />
  end<br />
<br />
  def open_purchase<br />
    &#36;game_system.se_play(&#36;data_system.decision_se)<br />
    @command_window.active = false<br />
    @dummy_window.visible = false<br />
    @buy_window.active = true<br />
    @buy_window.visible = true<br />
    @buy_window.refresh<br />
    @status_window.visible = true<br />
  end<br />
<br />
  def open_sale<br />
    &#36;game_system.se_play(&#36;data_system.decision_se)<br />
    @command_window.active = false<br />
    @dummy_window.visible = false<br />
    @sell_window.active = true<br />
    @sell_window.visible = true<br />
    @sell_window.refresh<br />
  end<br />
<br />
  def update_buy<br />
    @status_window.item = @buy_window.item<br />
    if Input.trigger?(Input::B)<br />
      &#36;game_system.se_play(&#36;data_system.cancel_se)<br />
      @command_window.active = true<br />
      @dummy_window.visible = true<br />
      @buy_window.active = false<br />
      @buy_window.visible = false<br />
      @status_window.visible = false<br />
      @status_window.item = nil<br />
      show_friendship_level<br />
      return<br />
    elsif Input.trigger?(Input::C)<br />
      @item = @buy_window.item<br />
      price = @buy_window.price<br />
      if @item == nil or &#36;game_party.gold &lt; price<br />
        &#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
        return<br />
      end<br />
      case @item<br />
      when RPG::Item<br />
        number = &#36;game_party.item_number(@item.id)<br />
      when RPG::Weapon<br />
        number = &#36;game_party.weapon_number(@item.id)<br />
      when RPG::Armor<br />
        number = &#36;game_party.armor_number(@item.id)<br />
      end<br />
      if ITEM_MAX == number<br />
        &#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
        return<br />
      end<br />
      &#36;game_system.se_play(&#36;data_system.decision_se)<br />
      max = price == 0 ? ITEM_MAX : &#36;game_party.gold / price<br />
      max = [max, ITEM_MAX - number].min<br />
      @buy_window.active = false<br />
      @buy_window.visible = false<br />
      @number_window.set(@item, max, price)<br />
      @number_window.active = true<br />
      @number_window.visible = true<br />
    end<br />
  end<br />
<br />
  def update_sell<br />
    if Input.trigger?(Input::B)<br />
      &#36;game_system.se_play(&#36;data_system.cancel_se)<br />
      @command_window.active = true<br />
      @dummy_window.visible = true<br />
      @sell_window.active = false<br />
      @sell_window.visible = false<br />
      @status_window.item = nil<br />
      show_friendship_level<br />
      return<br />
    elsif Input.trigger?(Input::C)<br />
      @item = @sell_window.item<br />
      @status_window.item = @item<br />
      price = @sell_window.price<br />
      if @item == nil or price == 0<br />
        &#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
        return<br />
      end<br />
      &#36;game_system.se_play(&#36;data_system.decision_se)<br />
      case @item<br />
      when RPG::Item<br />
        number = &#36;game_party.item_number(@item.id)<br />
      when RPG::Weapon<br />
        number = &#36;game_party.weapon_number(@item.id)<br />
      when RPG::Armor<br />
        number = &#36;game_party.armor_number(@item.id)<br />
      end<br />
      total = number<br />
      @sell_window.active = false<br />
      @sell_window.visible = false<br />
      @number_window.set(@item, total, price)<br />
      @number_window.active = true<br />
      @number_window.visible = true<br />
      @status_window.visible = true<br />
    end<br />
  end<br />
<br />
  def update_number<br />
    if Input.trigger?(Input::B)<br />
      &#36;game_system.se_play(&#36;data_system.cancel_se)<br />
      @number_window.active = false<br />
      @number_window.visible = false<br />
      case @command_window.index<br />
      when 0  # buy<br />
        @buy_window.active = true<br />
        @buy_window.visible = true<br />
      when 1  # sell<br />
        @sell_window.active = true<br />
        @sell_window.visible = true<br />
        @status_window.visible = false<br />
      end<br />
      return<br />
    elsif Input.trigger?(Input::C)<br />
      &#36;game_system.se_play(&#36;data_system.shop_se)<br />
      @number_window.active = false<br />
      @number_window.visible = false<br />
      item_id = @item.id<br />
      n = @number_window.number<br />
      @transactions += n<br />
      case @command_window.index<br />
      when 0  # buy<br />
        update_number_buy(item_id, n)<br />
        return<br />
      when 1  # sell<br />
        type = @sell_window.type<br />
        lost_points = @shop.sell_wrong_goods[type][item_id] || 0<br />
        if lost_points &gt; 0<br />
          @shop.friendship -= lost_points * n<br />
        else<br />
          @shop.friendship += n<br />
        end<br />
        price = @sell_window.price<br />
        &#36;game_party.gain_gold(n * price)<br />
        case @item<br />
        when RPG::Item<br />
          &#36;game_party.lose_item(item_id, n)<br />
        when RPG::Weapon<br />
          &#36;game_party.lose_weapon(item_id, n)<br />
        when RPG::Armor<br />
          &#36;game_party.lose_armor(item_id, n)<br />
        end<br />
        @gold_window.refresh<br />
        @sell_window.refresh<br />
        @status_window.refresh<br />
        @sell_window.active = true<br />
        @sell_window.visible = true<br />
        @status_window.visible = false<br />
      end<br />
    end<br />
  end<br />
<br />
  def update_number_buy(item_id, n)<br />
    @shop.friendship += n<br />
    price = @buy_window.price<br />
    &#36;game_party.lose_gold(n * price)<br />
    case @item<br />
    when RPG::Item<br />
      type = 0<br />
      &#36;game_party.gain_item(item_id, n)<br />
    when RPG::Weapon<br />
      type = 1<br />
      &#36;game_party.gain_weapon(item_id, n)<br />
    when RPG::Armor<br />
      type = 2<br />
      &#36;game_party.gain_armor(item_id, n)<br />
    end<br />
    @gold_window.refresh<br />
    if @shop.friendship != @fp<br />
      @fp = @shop.friendship<br />
      setup_friendly_goods<br />
      @buy_window.shop_goods = @shop_goods<br />
    end<br />
    @buy_window.refresh<br />
    @status_window.refresh<br />
    @buy_window.active = true<br />
    @buy_window.visible = true<br />
    gifts_list = @shop.buy_gifts[type]<br />
    gift = gifts_list[item_id]<br />
    if gift and gift.item_min &lt;= n<br />
      item_id = gift.item_id<br />
      total = n / gift.item_min * gift.amount<br />
      case type<br />
      when 0<br />
        &#36;game_party.gain_item(item_id, total)<br />
      when 1<br />
        &#36;game_party.gain_weapon(item_id, total)<br />
      when 2<br />
        &#36;game_party.gain_armor(item_id, total)<br />
      end<br />
      @gifts &lt;&lt; [type, item_id, total]<br />
      @get_gifts = true<br />
    end<br />
  end<br />
<br />
  def dispose_windows<br />
    @backdrop.bitmap.dispose<br />
    @backdrop.dispose<br />
    @help_window.dispose<br />
    @command_window.dispose<br />
    @gold_window.dispose<br />
    @dummy_window.dispose<br />
    @buy_window.dispose<br />
    @sell_window.dispose<br />
    @number_window.dispose<br />
    @status_window.dispose<br />
    @gift_window.dispose<br />
  end<br />
<br />
  def reset_price_shop<br />
    &#36;game_variables[SHOP_ID_VAR] = 0<br />
    &#36;game_switches[BUY_ONLY_SWITCH] = false<br />
    &#36;game_switches[SELL_ONLY_SWITCH] = false<br />
    &#36;game_party.compact_bag_items!<br />
    @shop.no_action_penalty! if @transactions == 0<br />
    list = @buy_window.shop_goods<br />
    if !@exclude_goods and list.size != @shop_goods.size<br />
      &#36;game_system.setup_price_shop(@shop_id, list)<br />
    end<br />
    &#36;game_system.reset_price_shop_id!<br />
  end<br />
end</code></div></div><br />
<span style="font-weight: bold;" class="mycode_b">Terms &amp; Conditions</span><br />
<br />
Free as in <img src="https://www.save-point.org/images/smilies/ejlol/beer.gif" alt="Beer" title="Beer" class="smilie smilie_189" /> beer.<br />
Mention me in your game credits.<br />
You may also add the forum's name and URL there.<br />
That's it! <img src="https://www.save-point.org/images/smilies/ejlol/tongue.gif" alt="Tongue sticking out" title="Tongue sticking out" class="smilie smilie_24" />]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: large;" class="mycode_size">KustomPriceShop XP</span></span></div>
<br />
<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">by Kyonides</span></span></div>
<br />
<span style="font-weight: bold;" class="mycode_b">Introduction</span><br />
<br />
This script allows you to open a special shop on a given map that offers:<br />
<ul class="mycode_list"><li>Setting custom (buy or sale) prices for specific items.<br />
</li>
<li>Setting certain goods as highly undesirable, making the party lose friendship points at that shop.<br />
</li>
<li>Rewarding loyal customers with free gifts if they buy a given amount of items or weapons or armors.<br />
</li>
<li>Creating buy-only or sell-only shops.<br />
</li>
</ul>
<br />
To keep it separate from normal shops, set the shop's ID via a game variable.<br />
<br />
You can change the maximum number of units per item allowed in your game.<br />
<br />
Leaving the shop without doing anything will decrease the shop's friendship points by 1 (default value).<br />
Purchases and sales will increase those points in no time! <img src="https://www.save-point.org/images/smilies/ejlol/shocked.gif" alt="Shocked" title="Shocked" class="smilie smilie_22" /> <br />
<br />
It also lets you to set a backdrop as well instead of the current map.<br />
<br />
<div class="tborder">
  			<div class="thead" style="padding:4px; margin:1px;"><input type="button" class="button" value="+" style="font-family:Monospace; padding:0px" onclick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].style.display=='none'){ this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='';this.value='-';} else {this.parentNode.parentNode.getElementsByTagName('div')[1].style.display='none';this.value='+';}"/> SCREENSHOTS</div>
  			<div class="trow2" style="display:none; padding:4px; margin:1px;">
<div style="text-align: center;" class="mycode_align"><img src="https://i.postimg.cc/d04B4wFx/kustompriceshop-xp001.jpg" loading="lazy"  alt="[Image: kustompriceshop-xp001.jpg]" class="mycode_img" /></div>
<div style="text-align: center;" class="mycode_align"><img src="https://i.postimg.cc/252w2rYt/kustompriceshop-xp002.jpg" loading="lazy"  alt="[Image: kustompriceshop-xp002.jpg]" class="mycode_img" /></div>
</div>
		</div>
<br />
<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">Optional Script Calls For The Active Shop</span></span></div>
<br />
<span style="font-weight: bold;" class="mycode_b">NOTE:</span> ItemID stands for an actual positive number, starting from 1 onwards.<br />
<br />
Add Items with Custom Prices:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>buy_price_items(ItemID1 =&gt; Price1, etc.)<br />
sell_price_items(ItemID1 =&gt; Price1, etc.)</code></div></div><br />
Add Weapons with Custom Prices:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>buy_price_weapons(WeaponID1 =&gt; Price1, etc.)<br />
sell_price_weapons(WeaponID1 =&gt; Price1, etc.)</code></div></div><br />
Add Armors with Custom Prices:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>buy_price_armors(ArmorID1 =&gt; Price1, etc.)<br />
sell_price_armors(ArmorID1 =&gt; Price1, etc.)</code></div></div><br />
Change Custom Price Shop's Friendship Points - Number stands for any number, either positive or negative.<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>price_shop_friend_points(Number)</code></div></div><br />
Set Minimum Friendship Level for Certain Items, Weapons or Armors - Types: 0 - Item, 1 - Weapon, 2 - Armor<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>price_shop_friendship_min(Mininum, Type, ItemID1, etc.)</code></div></div><br />
Set the Lowest Level The Friendship Points can reach: Number should be equal to 0 or less.<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>price_shop_friend_floor(Number)</code></div></div><br />
Change Custom Price Shop's No Transaction Penalty - Number stands for 0 or any positive number. Default Value: 1.<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>price_shop_set_no_action_penalty(Number)</code></div></div><br />
Reward Your Loyal Customers with Items:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>buy_gifts_items(ItemID, ItemsMin, GiftItemID, Number)</code></div></div><br />
Reward Your Loyal Customers with Weapons:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>buy_gifts_weapons(ItemID, ItemsMin, GiftItemID, Number)</code></div></div><br />
Reward Your Loyal Customers with Armors:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>buy_gifts_armors(ItemID, ItemsMin, GiftItemID, Number)</code></div></div><br />
Punish the Player for Selling the "Wrong" Items: LostPoints stands for 1 or above.<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>sell_price_wrong_items(ItemID1 =&gt; LostPoints, etc.)</code></div></div><br />
Punish the Player for Selling the "Wrong" Weapons:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>sell_price_wrong_weapons(WeaponID1 =&gt; LostPoints, etc.)</code></div></div><br />
Punish the Player for Selling the "Wrong" Armors:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>sell_price_wrong_armors(ArmorID1 =&gt; LostPoints, etc.)</code></div></div><br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">The Script</span></span><br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code># * KustomPriceShop XP * #<br />
#   Scripter : Kyonides<br />
#   v1.0.0 - 2026-05-23<br />
<br />
# Create a special shop that offers:<br />
# - Setting custom prices for specific items.<br />
# - Setting certain goods as highly undesirable, making the party lose<br />
#   friendship points at that shop.<br />
# - Rewarding loyal customers with free gifts if they buy a given amount of<br />
#   items or weapons or armors.<br />
# - Creating purchase-only or sell-only shops.<br />
<br />
# To keep it separate from normal shops, set the shop's ID via a game variable.<br />
# You can change the maximum number of units per item allowed in your game.<br />
# It also allows you to set a backdrop as well instead of the current map.<br />
# Leaving the shop without doing anything will decrease the shop's friendship<br />
# points by 1 (default value).<br />
<br />
# * Optional Script Calls For The Active Shop * #<br />
<br />
# - Add Items with Custom Prices:<br />
# buy_price_items(ItemID1 =&gt; Price1, etc.)<br />
# sell_price_items(ItemID1 =&gt; Price1, etc.)<br />
<br />
# - Add Weapons with Custom Prices:<br />
# buy_price_weapons(WeaponID1 =&gt; Price1, etc.)<br />
# sell_price_weapons(WeaponID1 =&gt; Price1, etc.)<br />
<br />
# - Add Armors with Custom Prices:<br />
# buy_price_armors(ArmorID1 =&gt; Price1, etc.)<br />
# sell_price_armors(ArmorID1 =&gt; Price1, etc.)<br />
<br />
# - Change Custom Price Shop's Friendship Points:<br />
#   Number stands for any number, either positive or negative.<br />
# price_shop_friend_points(Number)<br />
<br />
# - Set Minimum Friendship Level for Certain Items, Weapons or Armors:<br />
#   Types: 0 - Item, 1 - Weapon, 2 - Armor<br />
# price_shop_friendship_min(Mininum, Type, ItemID1, etc.)<br />
<br />
# - Set the Lowest Level The Friendship Points can reach: 0 or less.<br />
# price_shop_friend_floor(Number)<br />
<br />
# - Change Custom Price Shop's No Transaction Penalty:<br />
#   Number stands for 0 or any positive number. Default Value: 1.<br />
# price_shop_set_no_action_penalty(Number)<br />
<br />
# - Reward Your Loyal Customers with Items:<br />
# buy_gifts_items(ItemID, ItemsMin, GiftItemID, Number)<br />
<br />
# - Reward Your Loyal Customers with Weapons:<br />
# buy_gifts_weapons(ItemID, ItemsMin, GiftItemID, Number)<br />
<br />
# - Reward Your Loyal Customers with Armors:<br />
# buy_gifts_armors(ItemID, ItemsMin, GiftItemID, Number)<br />
<br />
# - Punish the Player for Selling the Wrong Items:<br />
# sell_price_wrong_items(ItemID1 =&gt; LostPoints, etc.)<br />
<br />
# - Punish the Player for Selling the Wrong Weapons:<br />
# sell_price_wrong_weapons(WeaponID1 =&gt; LostPoints, etc.)<br />
<br />
# - Punish the Player for Selling the Wrong Armors:<br />
# sell_price_wrong_armors(ArmorID1 =&gt; LostPoints, etc.)<br />
<br />
module KustomPrice<br />
  ITEM_MAX = 99<br />
  BUY_ONLY_SWITCH  = 8<br />
  SELL_ONLY_SWITCH = 9<br />
  SHOP_ID_VAR = 10<br />
  DEFAULT_BACKDROP = "012-PortTown02"<br />
  FRIENDSHIP_LEVEL = "Friendship Level: %s"<br />
  SPECIAL_REWARDS  = "Special Rewards"<br />
<br />
  class Shop<br />
    class Gifts<br />
      def initialize(item_min, item_id, n)<br />
        @item_min = item_min<br />
        @item_id = item_id<br />
        @amount = n<br />
      end<br />
      attr_reader :item_min, :item_id, :amount<br />
    end<br />
<br />
    def initialize<br />
      @friendship = 0<br />
      @friendship_floor = 0<br />
      @no_action_penalty = 1<br />
      @friendship_min = {}<br />
      @buy_prices = {}<br />
      @sell_prices = {}<br />
      @buy_item_max = {}<br />
      @sell_item_max = {}<br />
      @buy_gifts = {}<br />
      @sell_wrong_goods = {}<br />
      @friendship_min.default = {}<br />
      @buy_prices.default = {}<br />
      @sell_prices.default = {}<br />
      @buy_gifts.default = {}<br />
      @sell_wrong_goods.default = {}<br />
      @buy_item_max.default = ITEM_MAX<br />
      @sell_item_max.default = ITEM_MAX<br />
    end<br />
<br />
    def friendship=(n)<br />
      @friendship = [@friendship + n, @friendship_floor].max<br />
    end<br />
<br />
    def no_action_penalty!<br />
      self.friendship -= @no_action_penalty<br />
    end<br />
<br />
    def frienship_min(mininum, type, *items)<br />
      fmin = @friendship_min[type]<br />
      items.flatten.each {|n| fmin[n] = mininum }<br />
      mininum<br />
    end<br />
<br />
    def set_buy_prices(type, data={})<br />
      @buy_prices[type].merge!(data)<br />
    end<br />
<br />
    def set_sell_prices(type, data={})<br />
      @sell_prices[type].merge!(data)<br />
    end<br />
<br />
    def set_buy_gifts(type, parent_id, item_min, item_id, n)<br />
      @buy_gifts[type][parent_id] = Gifts.new(item_min, item_id, n)<br />
    end<br />
<br />
    def sell_wrong_goods(type, data={})<br />
      @sell_wrong_goods[type].merge!(data)<br />
    end<br />
    attr_reader :friendship, :friendship_floor, :friendship_min<br />
    attr_reader :buy_prices, :sell_prices, :buy_gifts<br />
    attr_reader :buy_item_max, :sell_item_max, :sell_wrong_goods<br />
    attr_accessor :goods, :no_action_penalty<br />
  end<br />
end<br />
<br />
class Game_System<br />
  alias :kyon_kp_shop_gm_sys_init :initialize<br />
  def initialize<br />
    kyon_kp_shop_gm_sys_init<br />
    reset_price_shop_id!<br />
    @custom_price_shops = {}<br />
  end<br />
<br />
  def reset_price_shop_id!<br />
    @price_shop_id = 0<br />
  end<br />
<br />
  def init_price_shop(shop_id)<br />
    @price_shop_id = shop_id<br />
    @custom_price_shops[shop_id] ||= KustomPrice::Shop.new<br />
  end<br />
<br />
  def setup_price_shop(shop_id, new_goods)<br />
    shop = @custom_price_shops[shop_id]<br />
    shop.goods = new_goods<br />
  end<br />
<br />
  def this_price_shop<br />
    @custom_price_shops[@price_shop_id]<br />
  end<br />
  attr_reader :custom_price_shops<br />
end<br />
<br />
class Game_Party<br />
  def bag_items<br />
    @items<br />
  end<br />
<br />
  def bag_weapons<br />
    @weapons<br />
  end<br />
<br />
  def bag_armors<br />
    @armors<br />
  end<br />
<br />
  def compact_bag_items!<br />
    @items.delete_if {|k,v| v == 0 }<br />
    @weapons.delete_if {|k,v| v == 0 }<br />
    @armors.delete_if {|k,v| v == 0 }<br />
  end<br />
end<br />
<br />
class Window_ShopCommand<br />
  def reset_disabled_items<br />
    @disabled = []<br />
  end<br />
<br />
  def disable_current_item?<br />
    @disabled[@index]<br />
  end<br />
end<br />
<br />
module KustomPrice<br />
  module AddMethods<br />
    def item<br />
      @data[@index] || @no_item<br />
    end<br />
<br />
    def price<br />
      @prices[@index] || 0<br />
    end<br />
<br />
    def type<br />
      @types[@index] || 0<br />
    end<br />
<br />
    def get_price(n, item_id, price)<br />
      case @types[n]<br />
      when 0<br />
        @item_prices[item_id] || price<br />
      when 1<br />
        @weapon_prices[item_id] || price<br />
      when 2<br />
        @armor_prices[item_id] || price<br />
      end<br />
    end<br />
  end<br />
<br />
class ShopBuyWindow &lt; Window_Selectable<br />
  include AddMethods<br />
  attr_accessor :shop_goods<br />
  def initialize(shop, shop_goods)<br />
    w = 368<br />
    @tw = w - 64<br />
    super(0, 288, w, 192)<br />
    sp = shop.buy_prices<br />
    @item_prices   = sp[0]<br />
    @weapon_prices = sp[1]<br />
    @armor_prices  = sp[2]<br />
    @shop_goods = shop_goods.dup<br />
    @no_item = RPG::Item.new<br />
    @transparent = Color.new(0, 0, 0, 0)<br />
    @symbol_color = Color.new(255, 255, 80)<br />
    @symbol = &#36;data_system.words.gold<br />
    refresh<br />
    self.index = 0<br />
  end<br />
<br />
  def item_name<br />
    self.item.name<br />
  end<br />
<br />
  def set_goods(goods_item)<br />
    type, goods_id = goods_item<br />
    case type<br />
    when 0<br />
      [type, &#36;data_items[goods_id]]<br />
    when 1<br />
      [type, &#36;data_weapons[goods_id]]<br />
    when 2<br />
      [type, &#36;data_armors[goods_id]]<br />
    end<br />
  end<br />
<br />
  def refresh<br />
    if self.contents != nil<br />
      self.contents.dispose<br />
      self.contents = nil<br />
    end<br />
    @types = []<br />
    @data = []<br />
    @prices = []<br />
    for goods_item in @shop_goods<br />
      type, item = set_goods(goods_item)<br />
      next unless item<br />
      n = @types.size<br />
      @types &lt;&lt; type<br />
      @data &lt;&lt; item<br />
      @prices &lt;&lt; get_price(n, item.id, item.price)<br />
    end<br />
    draw_items<br />
  end<br />
<br />
  def draw_items<br />
    @item_max = @data.size<br />
    self.contents = Bitmap.new(width - 32, row_max * 32) if @item_max &gt; 0<br />
    @item_max.times {|i| draw_item(i) }<br />
  end<br />
<br />
  def clear_line(rx, ry)<br />
    rect = Rect.new(rx, ry, self.width - 32, 32)<br />
    self.contents.fill_rect(rect, @transparent)<br />
  end<br />
<br />
  def draw_item(n)<br />
    item = @data[n]<br />
    font = self.contents.font<br />
    price = @prices[n]<br />
    if &#36;game_party.gold &gt;= price<br />
      font.color = normal_color<br />
      alpha = 255<br />
    else<br />
      font.color = disabled_color<br />
      alpha = 128<br />
    end<br />
    ry = n * 32<br />
    clear_line(4, ry)<br />
    bitmap = RPG::Cache.icon(item.icon_name)<br />
    self.contents.blt(28, ry + 4, bitmap, Rect.new(0, 0, 24, 24), alpha)<br />
    self.contents.draw_text(56, ry, @tw - 100, 32, item.name)<br />
    self.contents.draw_text(@tw - 92, ry, 100, 32, price.to_s, 2)<br />
    @symbol_color.alpha = alpha<br />
    font.color = @symbol_color<br />
    self.contents.draw_text(@tw, ry, 24, 32, @symbol, 2)<br />
  end<br />
<br />
  def update_help<br />
    @help_window.set_text(self.item.description)<br />
  end<br />
<br />
  def delete_item<br />
    @shop_goods.delete(@index)<br />
    item = @data.delete(@index)<br />
    self.contents.dispose if self.contents != nil<br />
    self.contents = nil<br />
    draw_items<br />
  end<br />
<br />
  def disable_item(n)<br />
    draw_item(n, disabled_color)<br />
    @disabled[n] = true<br />
  end<br />
end<br />
<br />
class ShopSellWindow &lt; Window_Selectable<br />
  include AddMethods<br />
  def initialize(shop)<br />
    super(0, 128, 640, 352)<br />
    @column_max = 2<br />
    @no_item = RPG::Item.new<br />
    sp = shop.sell_prices<br />
    @item_prices   = sp[0]<br />
    @weapon_prices = sp[1]<br />
    @armor_prices  = sp[2]<br />
    refresh<br />
    self.index = 0<br />
  end<br />
<br />
  def refresh<br />
    if self.contents != nil<br />
      self.contents.dispose<br />
      self.contents = nil<br />
    end<br />
    @types = []<br />
    @data = []<br />
    @prices = []<br />
    n = 0<br />
    &#36;game_party.bag_items.sort.each do |k,v|<br />
      next if &#36;game_party.item_number(k) == 0<br />
      @types &lt;&lt; 0<br />
      @data &lt;&lt; obj = &#36;data_items[k]<br />
      @prices &lt;&lt; get_price(n, k, obj.price / 2)<br />
      n += 1<br />
    end<br />
    &#36;game_party.bag_weapons.sort.each do |k,v|<br />
      next if &#36;game_party.weapon_number(i) == 0<br />
      @types &lt;&lt; 1<br />
      @data &lt;&lt; obj = &#36;data_weapons[k]<br />
      @prices &lt;&lt; get_price(n, k, obj.price / 2)<br />
      n += 1<br />
    end<br />
    &#36;game_party.bag_armors.sort.each do |k,v|<br />
      next if &#36;game_party.armor_number(i) == 0<br />
      @types &lt;&lt; 2<br />
      @data &lt;&lt; obj = &#36;data_armors[k]<br />
      @prices &lt;&lt; get_price(n, k, obj.price / 2)<br />
      n += 1<br />
    end<br />
    @item_max = @data.size<br />
    return if @item_max == 0<br />
    self.contents = Bitmap.new(width - 32, row_max * 32)<br />
    @item_max.times {|n| draw_item(n) }<br />
  end<br />
<br />
  def draw_item(n)<br />
    item = @data[n]<br />
    case item<br />
    when RPG::Item<br />
      number = &#36;game_party.item_number(item.id)<br />
    when RPG::Weapon<br />
      number = &#36;game_party.weapon_number(item.id)<br />
    when RPG::Armor<br />
      number = &#36;game_party.armor_number(item.id)<br />
    end<br />
    price = @prices[n]<br />
    if price &gt; 0<br />
      self.contents.font.color = normal_color<br />
    else<br />
      self.contents.font.color = disabled_color<br />
    end<br />
    x = 4 + n % 2 * (288 + 32)<br />
    y = n / 2 * 32<br />
    rect = Rect.new(x, y, self.width / @column_max - 32, 32)<br />
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))<br />
    bitmap = RPG::Cache.icon(item.icon_name)<br />
    opacity = self.contents.font.color == normal_color ? 255 : 128<br />
    self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)<br />
    self.contents.draw_text(x + 28, y, 212, 32, item.name, 0)<br />
    self.contents.draw_text(x + 240, y, 16, 32, ":", 1)<br />
    self.contents.draw_text(x + 256, y, 24, 32, number.to_s, 2)<br />
  end<br />
<br />
  def update_help<br />
    @help_window.set_text(self.item.description)<br />
  end<br />
end<br />
<br />
class ShopGiftWindow &lt; Window_Selectable<br />
  def initialize<br />
    super(160, 144, 320, 128)<br />
    @w = width - 32<br />
    @h = height - 32<br />
    @types = []<br />
    @gifts = []<br />
    @amounts = []<br />
    @pages = 0<br />
    @index = 0<br />
  end<br />
<br />
  def set_gifts(list)<br />
    list.each do |type, gift, n|<br />
      @types &lt;&lt; type<br />
      @gifts &lt;&lt; gift<br />
      @amounts &lt;&lt; n<br />
    end<br />
    @pages = list.size<br />
    refresh<br />
  end<br />
<br />
  def change_page(n)<br />
    return if @pages == 1<br />
    @index = (@index + n) % @pages<br />
    refresh<br />
  end<br />
<br />
  def refresh<br />
    page = @index + 1<br />
    label = "Page " + page.to_s + "/" + @pages.to_s<br />
    n = @amounts[@index]<br />
    b = Bitmap.new(@w, @h)<br />
    font = b.font<br />
    font.color = system_color<br />
    b.draw_text(0, 0, @w, 32, SPECIAL_REWARDS, 1)<br />
    good = get_good<br />
    font.color = normal_color<br />
    b.draw_text(0, 32, @w, 32, good.name)<br />
    b.draw_text(0, 32, @w, 32, n.to_s, 2)<br />
    b.draw_text(0, 64, @w, 32, label, 2)<br />
    self.contents = b<br />
  end<br />
<br />
  def get_good<br />
    item_id = @gifts[@index]<br />
    case @types[@index]<br />
    when 0<br />
      return &#36;data_items[item_id]<br />
    when 1<br />
      return &#36;data_weapons[item_id]<br />
    when 2<br />
      return &#36;data_armors[item_id]<br />
    end<br />
  end<br />
end<br />
<br />
end<br />
<br />
class Interpreter<br />
  alias :kyon_kp_shop_int_chng_vars :command_122<br />
  def command_122<br />
    kyon_kp_shop_int_chng_vars<br />
    var_id = @parameters[0]<br />
    return unless KustomPrice::SHOP_ID_VAR == var_id<br />
    var_id = @parameters[4]<br />
    @price_shop = &#36;game_system.init_price_shop(var_id)<br />
  end<br />
<br />
  def price_shop_friend_points(n)<br />
    @price_shop.friendship += n<br />
  end<br />
<br />
  def price_shop_friend_floor(n)<br />
    @price_shop.friendship_floor = n<br />
  end<br />
<br />
  def price_shop_friendship_min(min, type, *items)<br />
    @price_shop.frienship_min(min, type, *items)<br />
  end<br />
<br />
  def price_shop_set_no_action_penalty(n)<br />
    @price_shop.no_action_penalty = n<br />
  end<br />
<br />
  def buy_price_items(data={})<br />
    @price_shop.set_buy_prices(0, data)<br />
  end<br />
<br />
  def buy_price_weapons(data={})<br />
    @price_shop.set_buy_prices(1, data)<br />
  end<br />
<br />
  def buy_price_armors(data={})<br />
    @price_shop.set_buy_prices(2, data)<br />
  end<br />
<br />
  def sell_price_items(data={})<br />
    @price_shop.set_sell_prices(0, data)<br />
  end<br />
<br />
  def sell_price_weapons(data={})<br />
    @price_shop.set_sell_prices(1, data)<br />
  end<br />
<br />
  def sell_price_armors(data={})<br />
    @price_shop.set_sell_prices(2, data)<br />
  end<br />
<br />
  def buy_gifts_items(item_id, item_min, gift_item_id, n)<br />
    @price_shop.set_buy_gifts(0, item_id, item_min, gift_item_id, n)<br />
  end<br />
<br />
  def buy_gifts_weapons(item_id, item_min, gift_item_id, n)<br />
    @price_shop.set_buy_gifts(1, item_id, item_min, gift_item_id, n)<br />
  end<br />
<br />
  def buy_gifts_armors(item_id, item_min, gift_item_id, n)<br />
    @price_shop.set_buy_gifts(2, item_id, item_min, gift_item_id, n)<br />
  end<br />
  <br />
  def sell_price_wrong_items(data={})<br />
    @price_shop.sell_wrong_goods(0, data)<br />
  end<br />
<br />
  def sell_price_wrong_weapons(data={})<br />
    @price_shop.sell_wrong_goods(1, data)<br />
  end<br />
<br />
  def sell_price_wrong_armors(data={})<br />
    @price_shop.sell_wrong_goods(2, data)<br />
  end<br />
end<br />
<br />
class Scene_Map<br />
  def call_shop<br />
    &#36;game_temp.shop_calling = false<br />
    &#36;game_player.straighten<br />
    shop_var = KustomPrice::SHOP_ID_VAR<br />
    if &#36;game_variables[shop_var] != 0<br />
      &#36;scene = PriceShopScene.new<br />
    else<br />
      &#36;scene = Scene_Shop.new<br />
    end<br />
  end<br />
end<br />
<br />
class PriceShopScene &lt; Scene_Shop<br />
  include KustomPrice<br />
  def find_shop_id<br />
    &#36;game_variables[SHOP_ID_VAR]<br />
  end<br />
<br />
  def main<br />
    prepare_goods<br />
    make_backdrop<br />
    make_windows<br />
    Graphics.transition<br />
    loop do<br />
      Graphics.update<br />
      Input.update<br />
      update<br />
      if &#36;scene != self<br />
        break<br />
      end<br />
    end<br />
    Graphics.freeze<br />
    dispose_windows<br />
    reset_price_shop<br />
  end<br />
<br />
  def prepare_goods<br />
    &#36;game_party.compact_bag_items!<br />
    @transactions = 0<br />
    @shop_id = find_shop_id<br />
    @shop = &#36;game_system.this_price_shop<br />
    @fp = @shop.friendship<br />
    @fp_min = @shop.friendship_min<br />
    @goods = @shop.goods || &#36;game_temp.shop_goods<br />
    setup_friendly_goods<br />
  end<br />
<br />
  def setup_friendly_goods<br />
    @gifts = []<br />
    @shop_goods = []<br />
    @goods.each do |type, obj_id|<br />
      group = @fp_min[type]<br />
      level = group[obj_id] || 0<br />
      @shop_goods &lt;&lt; [type, obj_id] if level == 0 or level &lt;= @fp<br />
    end<br />
    @exclude_goods = @shop_goods.size != @goods.size<br />
  end<br />
<br />
  def make_backdrop<br />
    @backdrop = Sprite.new<br />
    @backdrop.bitmap = RPG::Cache.battleback(DEFAULT_BACKDROP)<br />
  end<br />
<br />
  def make_windows<br />
    @help_window = Window_Help.new<br />
    show_friendship_level<br />
    @command_window = Window_ShopCommand.new<br />
    @command_window.reset_disabled_items<br />
    @command_window.disable_item(0) if &#36;game_switches[SELL_ONLY_SWITCH]<br />
    @command_window.disable_item(1) if &#36;game_switches[BUY_ONLY_SWITCH]<br />
    @gold_window = Window_Gold.new<br />
    @gold_window.x = 480<br />
    @gold_window.y = 64<br />
    @dummy_window = Window_Base.new(0, 288, 640, 192)<br />
    @buy_window = ShopBuyWindow.new(@shop, @shop_goods)<br />
    @buy_window.active = false<br />
    @buy_window.visible = false<br />
    @buy_window.help_window = @help_window<br />
    @sell_window = ShopSellWindow.new(@shop)<br />
    @sell_window.active = false<br />
    @sell_window.visible = false<br />
    @sell_window.help_window = @help_window<br />
    @number_window = Window_ShopNumber.new<br />
    @number_window.active = false<br />
    @number_window.visible = false<br />
    @status_window = Window_ShopStatus.new<br />
    @status_window.visible = false<br />
    @gift_window = ShopGiftWindow.new<br />
    @gift_window.visible = false<br />
  end<br />
<br />
  def show_friendship_level<br />
    points = @shop.friendship.to_s<br />
    points = sprintf(FRIENDSHIP_LEVEL, points)<br />
    @help_window.set_text(points)<br />
  end<br />
<br />
  def update<br />
    if @show_gifts<br />
      update_show_gifts<br />
      return<br />
    end<br />
    super<br />
  end<br />
<br />
  def update_show_gifts<br />
    if Input.trigger?(Input::B) or Input.trigger?(Input::C)<br />
      &#36;game_system.se_play(&#36;data_system.cancel_se)<br />
      &#36;scene = Scene_Map.new<br />
      return @show_gifts = nil<br />
    elsif Input.trigger?(Input::LEFT)<br />
      &#36;game_system.se_play(&#36;data_system.cursor_se)<br />
      @gift_window.change_page(-1)<br />
      return<br />
    elsif Input.trigger?(Input::RIGHT)<br />
      &#36;game_system.se_play(&#36;data_system.cursor_se)<br />
      @gift_window.change_page(1)<br />
    end<br />
  end<br />
<br />
  def update_command<br />
    if Input.trigger?(Input::B)<br />
      if @get_gifts<br />
        &#36;game_system.se_play(&#36;data_system.shop_se)<br />
        @command_window.index = -1<br />
        @gift_window.set_gifts(@gifts)<br />
        @gift_window.visible = true<br />
        Graphics.screenshot<br />
        @get_gifts = nil<br />
        return @show_gifts = true<br />
      else<br />
        &#36;game_system.se_play(&#36;data_system.cancel_se)<br />
        &#36;scene = Scene_Map.new<br />
      end<br />
      return<br />
    elsif Input.trigger?(Input::C)<br />
      if @command_window.disable_current_item?<br />
        &#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
        return<br />
      end<br />
      case @command_window.index<br />
      when 0<br />
        open_purchase<br />
      when 1<br />
        open_sale<br />
      when 2<br />
        &#36;game_system.se_play(&#36;data_system.decision_se)<br />
        &#36;scene = Scene_Map.new<br />
      end<br />
    end<br />
  end<br />
<br />
  def open_purchase<br />
    &#36;game_system.se_play(&#36;data_system.decision_se)<br />
    @command_window.active = false<br />
    @dummy_window.visible = false<br />
    @buy_window.active = true<br />
    @buy_window.visible = true<br />
    @buy_window.refresh<br />
    @status_window.visible = true<br />
  end<br />
<br />
  def open_sale<br />
    &#36;game_system.se_play(&#36;data_system.decision_se)<br />
    @command_window.active = false<br />
    @dummy_window.visible = false<br />
    @sell_window.active = true<br />
    @sell_window.visible = true<br />
    @sell_window.refresh<br />
  end<br />
<br />
  def update_buy<br />
    @status_window.item = @buy_window.item<br />
    if Input.trigger?(Input::B)<br />
      &#36;game_system.se_play(&#36;data_system.cancel_se)<br />
      @command_window.active = true<br />
      @dummy_window.visible = true<br />
      @buy_window.active = false<br />
      @buy_window.visible = false<br />
      @status_window.visible = false<br />
      @status_window.item = nil<br />
      show_friendship_level<br />
      return<br />
    elsif Input.trigger?(Input::C)<br />
      @item = @buy_window.item<br />
      price = @buy_window.price<br />
      if @item == nil or &#36;game_party.gold &lt; price<br />
        &#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
        return<br />
      end<br />
      case @item<br />
      when RPG::Item<br />
        number = &#36;game_party.item_number(@item.id)<br />
      when RPG::Weapon<br />
        number = &#36;game_party.weapon_number(@item.id)<br />
      when RPG::Armor<br />
        number = &#36;game_party.armor_number(@item.id)<br />
      end<br />
      if ITEM_MAX == number<br />
        &#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
        return<br />
      end<br />
      &#36;game_system.se_play(&#36;data_system.decision_se)<br />
      max = price == 0 ? ITEM_MAX : &#36;game_party.gold / price<br />
      max = [max, ITEM_MAX - number].min<br />
      @buy_window.active = false<br />
      @buy_window.visible = false<br />
      @number_window.set(@item, max, price)<br />
      @number_window.active = true<br />
      @number_window.visible = true<br />
    end<br />
  end<br />
<br />
  def update_sell<br />
    if Input.trigger?(Input::B)<br />
      &#36;game_system.se_play(&#36;data_system.cancel_se)<br />
      @command_window.active = true<br />
      @dummy_window.visible = true<br />
      @sell_window.active = false<br />
      @sell_window.visible = false<br />
      @status_window.item = nil<br />
      show_friendship_level<br />
      return<br />
    elsif Input.trigger?(Input::C)<br />
      @item = @sell_window.item<br />
      @status_window.item = @item<br />
      price = @sell_window.price<br />
      if @item == nil or price == 0<br />
        &#36;game_system.se_play(&#36;data_system.buzzer_se)<br />
        return<br />
      end<br />
      &#36;game_system.se_play(&#36;data_system.decision_se)<br />
      case @item<br />
      when RPG::Item<br />
        number = &#36;game_party.item_number(@item.id)<br />
      when RPG::Weapon<br />
        number = &#36;game_party.weapon_number(@item.id)<br />
      when RPG::Armor<br />
        number = &#36;game_party.armor_number(@item.id)<br />
      end<br />
      total = number<br />
      @sell_window.active = false<br />
      @sell_window.visible = false<br />
      @number_window.set(@item, total, price)<br />
      @number_window.active = true<br />
      @number_window.visible = true<br />
      @status_window.visible = true<br />
    end<br />
  end<br />
<br />
  def update_number<br />
    if Input.trigger?(Input::B)<br />
      &#36;game_system.se_play(&#36;data_system.cancel_se)<br />
      @number_window.active = false<br />
      @number_window.visible = false<br />
      case @command_window.index<br />
      when 0  # buy<br />
        @buy_window.active = true<br />
        @buy_window.visible = true<br />
      when 1  # sell<br />
        @sell_window.active = true<br />
        @sell_window.visible = true<br />
        @status_window.visible = false<br />
      end<br />
      return<br />
    elsif Input.trigger?(Input::C)<br />
      &#36;game_system.se_play(&#36;data_system.shop_se)<br />
      @number_window.active = false<br />
      @number_window.visible = false<br />
      item_id = @item.id<br />
      n = @number_window.number<br />
      @transactions += n<br />
      case @command_window.index<br />
      when 0  # buy<br />
        update_number_buy(item_id, n)<br />
        return<br />
      when 1  # sell<br />
        type = @sell_window.type<br />
        lost_points = @shop.sell_wrong_goods[type][item_id] || 0<br />
        if lost_points &gt; 0<br />
          @shop.friendship -= lost_points * n<br />
        else<br />
          @shop.friendship += n<br />
        end<br />
        price = @sell_window.price<br />
        &#36;game_party.gain_gold(n * price)<br />
        case @item<br />
        when RPG::Item<br />
          &#36;game_party.lose_item(item_id, n)<br />
        when RPG::Weapon<br />
          &#36;game_party.lose_weapon(item_id, n)<br />
        when RPG::Armor<br />
          &#36;game_party.lose_armor(item_id, n)<br />
        end<br />
        @gold_window.refresh<br />
        @sell_window.refresh<br />
        @status_window.refresh<br />
        @sell_window.active = true<br />
        @sell_window.visible = true<br />
        @status_window.visible = false<br />
      end<br />
    end<br />
  end<br />
<br />
  def update_number_buy(item_id, n)<br />
    @shop.friendship += n<br />
    price = @buy_window.price<br />
    &#36;game_party.lose_gold(n * price)<br />
    case @item<br />
    when RPG::Item<br />
      type = 0<br />
      &#36;game_party.gain_item(item_id, n)<br />
    when RPG::Weapon<br />
      type = 1<br />
      &#36;game_party.gain_weapon(item_id, n)<br />
    when RPG::Armor<br />
      type = 2<br />
      &#36;game_party.gain_armor(item_id, n)<br />
    end<br />
    @gold_window.refresh<br />
    if @shop.friendship != @fp<br />
      @fp = @shop.friendship<br />
      setup_friendly_goods<br />
      @buy_window.shop_goods = @shop_goods<br />
    end<br />
    @buy_window.refresh<br />
    @status_window.refresh<br />
    @buy_window.active = true<br />
    @buy_window.visible = true<br />
    gifts_list = @shop.buy_gifts[type]<br />
    gift = gifts_list[item_id]<br />
    if gift and gift.item_min &lt;= n<br />
      item_id = gift.item_id<br />
      total = n / gift.item_min * gift.amount<br />
      case type<br />
      when 0<br />
        &#36;game_party.gain_item(item_id, total)<br />
      when 1<br />
        &#36;game_party.gain_weapon(item_id, total)<br />
      when 2<br />
        &#36;game_party.gain_armor(item_id, total)<br />
      end<br />
      @gifts &lt;&lt; [type, item_id, total]<br />
      @get_gifts = true<br />
    end<br />
  end<br />
<br />
  def dispose_windows<br />
    @backdrop.bitmap.dispose<br />
    @backdrop.dispose<br />
    @help_window.dispose<br />
    @command_window.dispose<br />
    @gold_window.dispose<br />
    @dummy_window.dispose<br />
    @buy_window.dispose<br />
    @sell_window.dispose<br />
    @number_window.dispose<br />
    @status_window.dispose<br />
    @gift_window.dispose<br />
  end<br />
<br />
  def reset_price_shop<br />
    &#36;game_variables[SHOP_ID_VAR] = 0<br />
    &#36;game_switches[BUY_ONLY_SWITCH] = false<br />
    &#36;game_switches[SELL_ONLY_SWITCH] = false<br />
    &#36;game_party.compact_bag_items!<br />
    @shop.no_action_penalty! if @transactions == 0<br />
    list = @buy_window.shop_goods<br />
    if !@exclude_goods and list.size != @shop_goods.size<br />
      &#36;game_system.setup_price_shop(@shop_id, list)<br />
    end<br />
    &#36;game_system.reset_price_shop_id!<br />
  end<br />
end</code></div></div><br />
<span style="font-weight: bold;" class="mycode_b">Terms &amp; Conditions</span><br />
<br />
Free as in <img src="https://www.save-point.org/images/smilies/ejlol/beer.gif" alt="Beer" title="Beer" class="smilie smilie_189" /> beer.<br />
Mention me in your game credits.<br />
You may also add the forum's name and URL there.<br />
That's it! <img src="https://www.save-point.org/images/smilies/ejlol/tongue.gif" alt="Tongue sticking out" title="Tongue sticking out" class="smilie smilie_24" />]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[The Weekly Gazette 5-10-2026]]></title>
			<link>https://www.save-point.org/thread-13476.html</link>
			<pubDate>Mon, 11 May 2026 04:00:01 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=5">DerVVulfman</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13476.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align">
<img src="https://save-point.org/images/Gazette.png" loading="lazy"  alt="[Image: Gazette.png]" class="mycode_img" /><br />
</div>
<div style="text-align: right;" class="mycode_align">(May 4 to May 10, 2026)<br />
<br />
<a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<br />
Welcome dear readers to the latest issue of the Weekly Gazette!  Here in the Gazette, we give you the news in brief of what occurred in the past week as well as provide any news happening in Save-Point itself<br />
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Official Area</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> General Chat</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> <div style="height: 150px; border:1px solid; padding:4px; margin:1px; overflow:auto;">The conflict in the Middle East and control over he Strait of Hormuz continues within the <a href="showthread.php?tid=7628"><span class="highlight">News of the World</span></a> as Iran attacks ships in the area with missiles and six small attack boats, all sunk by US forces. However, Iran did not just attack ships the Strait but at UAE's oil facilities as the UAE pipeline is a strong alternative to the Strait and could cripple Iran's control. The Project Freedom initiative was paused for a time, either with suggestions of promising talks between the US and Iran and others claiming air bases were temporarily closed. However, France has now joined the initiative to defend shipping from Iranian attacks by sending its only aircraft carrier to the region followed by the HMS Dragon from the United Kingdom. But not joining is Germany's chancellor calling out Trump while China is defending Iran's right to have nuclear ambitions, this in opposition to Iranian Americans who are calling for an end of Iran's cruel regime. A cease fire between Ukraine and Russia seemed unlikely as the two nations not only couldn't agree on dates but that Russia open fired upon Zelensky with drone and missile strikes killing dozens before the cease fire was enacted. However, a three day cease fire was eventually agreed and put into effect with a promised prisoner swap of 1000 between each country. The cease fire also commemorates the anniversary of Russia's victory during World War II, but its Victory Day parade no longer included the tanks and missiles that prominently rolled down the streets as a sign of power, instead containing North Korean troops marching in their stead. Drones launched from both sides have been prominent, another series from Russia crashing once more into NATO territory. But this time a drone assumed to be from Ukraine discovered in Greek waters as one likely meant to cripple Russia's Black fleet. Further assassination attempts have been made against US President trump as a gunplay erupted between an armed man and Secret Service near the White House. And threats appeared as a Federal Aviation Administration (FAA) contractor threatened to kill Trump and Star Wars actor Mark Hamill posted an image of Trump in a shallow grave just after Disney announced its latest movie. Of would-be assassin Cole Allen, the judge actively apologized for his treatment being in solitary and suicide watch while Allen calls for the top two prosecutors be fired. Of fraud and violations committed by US officials, the FBI raided the office of a Virginian Democratic Senator over bribery charges concerning retail marijuana businesses. Another Democrat admits she worked to funnel oil to Cuba despite the official US sanctions. Democrat Gubernatorial candidate Becerra of California is under fire for creating illegal alien communities paid for by a taxpayer non-profit. And the Department of Justice is investigating a Virginian prosecutor for giving so-called sweetheart deals to illegal aliens. And to top it all off, Representative Ilhan Omar refused to turn over documents related to her possible ties to the &#36;250 million in Somali fraud and her connection to convicted fraudster, and Omar’s ex-staffer, Guhaad Hashi Said. Of violent crime, two are dead and twenty-five others injured in Leipzig Germany after a man powed through a pedestrian route with his car. Germany has faced several high‑profile vehicle‑ramming events in recent years such as the Christmas Market homicide in Magdeburg in 2024, and other high profile incidents have likewise appeared worldwide. Near King Charles III's estate, former Prince Andrew Mountbatten-Windsor was assailed by a man in a ski-mask with an offensive weapon who was subsequently arrested and taken to King’s Lynn Police Investigation Centre. And a maniac in Venice, California assaulted a 27 year old man by nearly hacking his hand off. Illegal activity propagated by China hit the news, a local community leader in Manhattan, NY now charged for Espionage as it worked for the CCP tracking down pro-democracy dissidents. And a 64-year-old Chinese National has been convicted of selling over a million fraudulent Covid-19 tests out of Fresno during the pandemic, tests not approved by the FDA nor made in the US. A Singapore-based business consultant not only revealed as a CCP spy after attempting to bribe congressional aids connected to US Foreign policy, but busted by the Committee on Foreign Policy by revealing the spy and recorded transcripts to the New York Times. And there are tens of thousands of Chinese nationals that have overstayed visas that the Communist Nation now refuses to take back despite previous committments. Iranian Sleeper Cells threatening the Olympics, a former senior adviser to Dr. Anthony Fauci admits he destroyed records on COVID origins, four more UNRAW staff members including teachers found to have participated with Hamas in October 7th the Virginia Supreme Court striking down the attempted gerrymandering which they already said was illegal at the start, Turkey's latest intercontinental ballistic missile capable of reaching most of Europe and Asia, the mocking of AOC by critics over her anti capitalistic stances and attempted rewriting of history, The Hezbollah commander of Iran-backed group’s elite Radwan force killed by Israeli forces, the death of CNN and movie mogul Ted Turner, the Disney cruise ship staffers among 28 arrested in massive child porn operation, and more hit this week's news.</div>
<span style="font-size: x-small;" class="mycode_size"><span style="font-style: italic;" class="mycode_i">Reduced from 32.4K words down to 875</span></span><br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Tech Talk</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Its been revealed this week that <a href="showthread.php?tid=7657"><span class="highlight">Chinese Hackers</span></a> haven't targeted the US alone, but also fellow Asian governments such as Pakistan, Thailand, Malaysia, India, Myanmar, Sri Lanka, and Taiwan. However, they continue to embed itself everywhere. The UK has issued warnings about China breaking into wifi routers to launch cyber-attacks. And Notepad++ developer Don Ho admits that China has inserted malicious software in their open source Notepad ++ code since 2025. Even more malicous are the two Chinese nationals who have been behind a crypto-currency scam run out of Burma with individuals that were trafficked, enslaved, beaten and then forced to steal from Americans for years. The now shut-down site revealed that there was no line separating slavery and espionage where China is concerned.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Games Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Development Discussion</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Graphics is certainly <a href="showthread.php?tid=395"><span class="highlight">What's up with our RMers</span></a> as using paint programs to scale graphics isn't good enough for Ace_V. He is arduously re-scaling graphics manually such as the 70px tall mech he designed in 2006 is being upgraded twenty years later.  And DerVVulfman is continuing work on his FaceSync editor, showing off the system that taked in graphics and positions them around the screen.<br />
<br />
Four new images have graced the <a href="showthread.php?tid=2870"><span class="highlight">Maps and Screenshot thread</span></a> this week, but it is not for the character portraits which you may eye but the sprites within the maps that no longer have a shrunken stature. However, Remi-chan does suggest that the new feline sprites may require some adjustment towards their stature.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Material Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Scripts Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> RPGMaker XP (RGSS) Engine</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> It was not long ago that kyonides crafted a script where players could actively <a href="showthread.php?tid=13419"><span class="highlight">ChooseFoes</span></a> to battle in an RPGMaker XP game. And such an option could be based upon various factors. However, this week kyonides continued its development by first allowing a means to add new enemies to an existing roster which is normally based on those foes normally encountered in a map. Some changes to the menu was implemented for improved functionality. But then he returned with a feature so the game developers could replace the enemy troops from which to choose with a new map dependent roster, a roster that could be easier to face or much more difficult.<br />
<br />
Once more, DerVVulfman returned to <a href="showthread.php?tid=12470"><span class="highlight">Windows Widgets!</span></a> in order to add more features, and of that he added a functional Scroll Bar that is independent of shifting windows mechanics and scrolling lists. The new scroll bar, able to be drawn horizontally and vertically, can be used at will and with a tab indicator that can be dragged. Meanwhile, DerVVulfman added a feature to the Image widget so it need not use a filename to load graphics but import a bitmap from a loaded cached file. A fix was implemented to his CheckBox widget to prevent stack errors, and the FileBox system can now limit what files are shown by specific file extensions.<br />
<br />
</div></div>
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Resources Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> 2D Resources</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Criminals have now entered the halls of the forum's resources. But they are crminials of which you may wish to employ as the <a href="showthread.php?tid=11336"><span class="highlight">Various RMXP sprites by Ace_V</span></a> continues working upon syndicate villains. Once more donned in a rich red shirt, a new thug has appeared. A thinner gold chain around his neck, this made man is not one to be trifled with. Are his eyess that of an innocent or that of a killer? No one can tell as they are concealed by the dark shades he wears.<br />
<br />
</div></div>
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Creativity Section</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Art and Design</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Once more have the halls of the forum's museum received new works, for the gallery dedicated to <a href="showthread.php?tid=8230"><span class="highlight">Remi-chan's Neato Arty thread thing!</span></a> contains a subject ever seen garbed in mere robes of white. Not since the fated clash has she shown her face. Not since the fated clash has her locks of blizzard and haze been freed to flow. Not since the fated clash has she revealed her face, once a complexion of alabaster white now a satiny sable; a product of revolution against tyranny and the overthrow of her master. SacreBlu, formerly a roadblock by the heroes in the 314th Clash, now a hero Remi-chan's current game in development, can be seen as she gazes upon you with eyes filled with whirlpools of blue. Not a full body portrait, the style of the month for Remi is that of facial studies and the flow of hair in the light breeze.  You can see her progress in the youtube speed draw she recorded.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Literature</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Within the library of our forum, two new works now appear though both are entwined. Belonging to her gaming realm, <a href="showthread.php?tid=8405"><span class="highlight">Remi-chan's Writing Snippets~</span></a> now contains a verse describing a protagonist whose very decision upset the balance of reality and time. But a small verse it is compared to her second.  For her second verse is a description of how things have been for eons and eons past before the past existed, and how changes have now been made as now a future unending is assured whether for better or worse.<br />
<br />
</div></div>
<br />
</div>
<br />
Well, that's it for this week.<br />
<br />
"You don’t need to go to church to be a Christian. If you go to Taco Bell, that doesn’t make you a taco." - Justin Beiber<br />
<br />
<br />
<div style="background:#eebbff;border:4px ridge purple;color: #222222;padding:2px;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">PROSPECTIVE GAZETEERS!</span><br />
<br />
<span style="font-style: italic;" class="mycode_i">If you are the creator of a thread in Save-Point, you have the option of sending/writing your own entry into the Gazette.  The Gazette accepts write-in announcements (which will be doublechecked).  Likewise, the Gazette would welcome other content such as a comic-strip series, ongoing story arc, or the like.  <br />
<br />
Just PM DerVVulfman with the submissions. Submissions must be in by 10pm EST. </span></div>
<div style="text-align: right;" class="mycode_align"><a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<span style="font-size: x-small;" class="mycode_size">Regularly posted  12am (EST) (between Sunday &amp; Monday) based on U.S. Daylight Savings,<br />
4am Monday (UTC), 10pm Sunday(CST/MDT), 6pm Sunday (HST), 6am Monday (CEST),  2pm Monday (AEST) observing daylight savings<br />
5am Monday (UTC), 11pm Sunday(CST), 6pm Sunday (HST), 7am Monday (CET),  3pm Monday (AEST) Not observing daylight savings</span>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align">
<img src="https://save-point.org/images/Gazette.png" loading="lazy"  alt="[Image: Gazette.png]" class="mycode_img" /><br />
</div>
<div style="text-align: right;" class="mycode_align">(May 4 to May 10, 2026)<br />
<br />
<a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<br />
Welcome dear readers to the latest issue of the Weekly Gazette!  Here in the Gazette, we give you the news in brief of what occurred in the past week as well as provide any news happening in Save-Point itself<br />
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Official Area</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> General Chat</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> <div style="height: 150px; border:1px solid; padding:4px; margin:1px; overflow:auto;">The conflict in the Middle East and control over he Strait of Hormuz continues within the <a href="showthread.php?tid=7628"><span class="highlight">News of the World</span></a> as Iran attacks ships in the area with missiles and six small attack boats, all sunk by US forces. However, Iran did not just attack ships the Strait but at UAE's oil facilities as the UAE pipeline is a strong alternative to the Strait and could cripple Iran's control. The Project Freedom initiative was paused for a time, either with suggestions of promising talks between the US and Iran and others claiming air bases were temporarily closed. However, France has now joined the initiative to defend shipping from Iranian attacks by sending its only aircraft carrier to the region followed by the HMS Dragon from the United Kingdom. But not joining is Germany's chancellor calling out Trump while China is defending Iran's right to have nuclear ambitions, this in opposition to Iranian Americans who are calling for an end of Iran's cruel regime. A cease fire between Ukraine and Russia seemed unlikely as the two nations not only couldn't agree on dates but that Russia open fired upon Zelensky with drone and missile strikes killing dozens before the cease fire was enacted. However, a three day cease fire was eventually agreed and put into effect with a promised prisoner swap of 1000 between each country. The cease fire also commemorates the anniversary of Russia's victory during World War II, but its Victory Day parade no longer included the tanks and missiles that prominently rolled down the streets as a sign of power, instead containing North Korean troops marching in their stead. Drones launched from both sides have been prominent, another series from Russia crashing once more into NATO territory. But this time a drone assumed to be from Ukraine discovered in Greek waters as one likely meant to cripple Russia's Black fleet. Further assassination attempts have been made against US President trump as a gunplay erupted between an armed man and Secret Service near the White House. And threats appeared as a Federal Aviation Administration (FAA) contractor threatened to kill Trump and Star Wars actor Mark Hamill posted an image of Trump in a shallow grave just after Disney announced its latest movie. Of would-be assassin Cole Allen, the judge actively apologized for his treatment being in solitary and suicide watch while Allen calls for the top two prosecutors be fired. Of fraud and violations committed by US officials, the FBI raided the office of a Virginian Democratic Senator over bribery charges concerning retail marijuana businesses. Another Democrat admits she worked to funnel oil to Cuba despite the official US sanctions. Democrat Gubernatorial candidate Becerra of California is under fire for creating illegal alien communities paid for by a taxpayer non-profit. And the Department of Justice is investigating a Virginian prosecutor for giving so-called sweetheart deals to illegal aliens. And to top it all off, Representative Ilhan Omar refused to turn over documents related to her possible ties to the &#36;250 million in Somali fraud and her connection to convicted fraudster, and Omar’s ex-staffer, Guhaad Hashi Said. Of violent crime, two are dead and twenty-five others injured in Leipzig Germany after a man powed through a pedestrian route with his car. Germany has faced several high‑profile vehicle‑ramming events in recent years such as the Christmas Market homicide in Magdeburg in 2024, and other high profile incidents have likewise appeared worldwide. Near King Charles III's estate, former Prince Andrew Mountbatten-Windsor was assailed by a man in a ski-mask with an offensive weapon who was subsequently arrested and taken to King’s Lynn Police Investigation Centre. And a maniac in Venice, California assaulted a 27 year old man by nearly hacking his hand off. Illegal activity propagated by China hit the news, a local community leader in Manhattan, NY now charged for Espionage as it worked for the CCP tracking down pro-democracy dissidents. And a 64-year-old Chinese National has been convicted of selling over a million fraudulent Covid-19 tests out of Fresno during the pandemic, tests not approved by the FDA nor made in the US. A Singapore-based business consultant not only revealed as a CCP spy after attempting to bribe congressional aids connected to US Foreign policy, but busted by the Committee on Foreign Policy by revealing the spy and recorded transcripts to the New York Times. And there are tens of thousands of Chinese nationals that have overstayed visas that the Communist Nation now refuses to take back despite previous committments. Iranian Sleeper Cells threatening the Olympics, a former senior adviser to Dr. Anthony Fauci admits he destroyed records on COVID origins, four more UNRAW staff members including teachers found to have participated with Hamas in October 7th the Virginia Supreme Court striking down the attempted gerrymandering which they already said was illegal at the start, Turkey's latest intercontinental ballistic missile capable of reaching most of Europe and Asia, the mocking of AOC by critics over her anti capitalistic stances and attempted rewriting of history, The Hezbollah commander of Iran-backed group’s elite Radwan force killed by Israeli forces, the death of CNN and movie mogul Ted Turner, the Disney cruise ship staffers among 28 arrested in massive child porn operation, and more hit this week's news.</div>
<span style="font-size: x-small;" class="mycode_size"><span style="font-style: italic;" class="mycode_i">Reduced from 32.4K words down to 875</span></span><br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Tech Talk</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Its been revealed this week that <a href="showthread.php?tid=7657"><span class="highlight">Chinese Hackers</span></a> haven't targeted the US alone, but also fellow Asian governments such as Pakistan, Thailand, Malaysia, India, Myanmar, Sri Lanka, and Taiwan. However, they continue to embed itself everywhere. The UK has issued warnings about China breaking into wifi routers to launch cyber-attacks. And Notepad++ developer Don Ho admits that China has inserted malicious software in their open source Notepad ++ code since 2025. Even more malicous are the two Chinese nationals who have been behind a crypto-currency scam run out of Burma with individuals that were trafficked, enslaved, beaten and then forced to steal from Americans for years. The now shut-down site revealed that there was no line separating slavery and espionage where China is concerned.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Games Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Development Discussion</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Graphics is certainly <a href="showthread.php?tid=395"><span class="highlight">What's up with our RMers</span></a> as using paint programs to scale graphics isn't good enough for Ace_V. He is arduously re-scaling graphics manually such as the 70px tall mech he designed in 2006 is being upgraded twenty years later.  And DerVVulfman is continuing work on his FaceSync editor, showing off the system that taked in graphics and positions them around the screen.<br />
<br />
Four new images have graced the <a href="showthread.php?tid=2870"><span class="highlight">Maps and Screenshot thread</span></a> this week, but it is not for the character portraits which you may eye but the sprites within the maps that no longer have a shrunken stature. However, Remi-chan does suggest that the new feline sprites may require some adjustment towards their stature.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Material Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Scripts Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> RPGMaker XP (RGSS) Engine</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> It was not long ago that kyonides crafted a script where players could actively <a href="showthread.php?tid=13419"><span class="highlight">ChooseFoes</span></a> to battle in an RPGMaker XP game. And such an option could be based upon various factors. However, this week kyonides continued its development by first allowing a means to add new enemies to an existing roster which is normally based on those foes normally encountered in a map. Some changes to the menu was implemented for improved functionality. But then he returned with a feature so the game developers could replace the enemy troops from which to choose with a new map dependent roster, a roster that could be easier to face or much more difficult.<br />
<br />
Once more, DerVVulfman returned to <a href="showthread.php?tid=12470"><span class="highlight">Windows Widgets!</span></a> in order to add more features, and of that he added a functional Scroll Bar that is independent of shifting windows mechanics and scrolling lists. The new scroll bar, able to be drawn horizontally and vertically, can be used at will and with a tab indicator that can be dragged. Meanwhile, DerVVulfman added a feature to the Image widget so it need not use a filename to load graphics but import a bitmap from a loaded cached file. A fix was implemented to his CheckBox widget to prevent stack errors, and the FileBox system can now limit what files are shown by specific file extensions.<br />
<br />
</div></div>
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Resources Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> 2D Resources</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Criminals have now entered the halls of the forum's resources. But they are crminials of which you may wish to employ as the <a href="showthread.php?tid=11336"><span class="highlight">Various RMXP sprites by Ace_V</span></a> continues working upon syndicate villains. Once more donned in a rich red shirt, a new thug has appeared. A thinner gold chain around his neck, this made man is not one to be trifled with. Are his eyess that of an innocent or that of a killer? No one can tell as they are concealed by the dark shades he wears.<br />
<br />
</div></div>
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Creativity Section</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Art and Design</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Once more have the halls of the forum's museum received new works, for the gallery dedicated to <a href="showthread.php?tid=8230"><span class="highlight">Remi-chan's Neato Arty thread thing!</span></a> contains a subject ever seen garbed in mere robes of white. Not since the fated clash has she shown her face. Not since the fated clash has her locks of blizzard and haze been freed to flow. Not since the fated clash has she revealed her face, once a complexion of alabaster white now a satiny sable; a product of revolution against tyranny and the overthrow of her master. SacreBlu, formerly a roadblock by the heroes in the 314th Clash, now a hero Remi-chan's current game in development, can be seen as she gazes upon you with eyes filled with whirlpools of blue. Not a full body portrait, the style of the month for Remi is that of facial studies and the flow of hair in the light breeze.  You can see her progress in the youtube speed draw she recorded.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Literature</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Within the library of our forum, two new works now appear though both are entwined. Belonging to her gaming realm, <a href="showthread.php?tid=8405"><span class="highlight">Remi-chan's Writing Snippets~</span></a> now contains a verse describing a protagonist whose very decision upset the balance of reality and time. But a small verse it is compared to her second.  For her second verse is a description of how things have been for eons and eons past before the past existed, and how changes have now been made as now a future unending is assured whether for better or worse.<br />
<br />
</div></div>
<br />
</div>
<br />
Well, that's it for this week.<br />
<br />
"You don’t need to go to church to be a Christian. If you go to Taco Bell, that doesn’t make you a taco." - Justin Beiber<br />
<br />
<br />
<div style="background:#eebbff;border:4px ridge purple;color: #222222;padding:2px;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">PROSPECTIVE GAZETEERS!</span><br />
<br />
<span style="font-style: italic;" class="mycode_i">If you are the creator of a thread in Save-Point, you have the option of sending/writing your own entry into the Gazette.  The Gazette accepts write-in announcements (which will be doublechecked).  Likewise, the Gazette would welcome other content such as a comic-strip series, ongoing story arc, or the like.  <br />
<br />
Just PM DerVVulfman with the submissions. Submissions must be in by 10pm EST. </span></div>
<div style="text-align: right;" class="mycode_align"><a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<span style="font-size: x-small;" class="mycode_size">Regularly posted  12am (EST) (between Sunday &amp; Monday) based on U.S. Daylight Savings,<br />
4am Monday (UTC), 10pm Sunday(CST/MDT), 6pm Sunday (HST), 6am Monday (CEST),  2pm Monday (AEST) observing daylight savings<br />
5am Monday (UTC), 11pm Sunday(CST), 6pm Sunday (HST), 7am Monday (CET),  3pm Monday (AEST) Not observing daylight savings</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[I am new here]]></title>
			<link>https://www.save-point.org/thread-13475.html</link>
			<pubDate>Mon, 11 May 2026 03:26:54 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=9314">Dingo_Ringo_Bingo</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13475.html</guid>
			<description><![CDATA[Hello guys, I am new here and I hope I am doing this right, I am a proud user of RPG Maker XP and I have passion to make games and projects using it and modifying it specifically for the above unusual experience.<br />
<br />
I have made some games prior but most of them where just small projects or demos unfinished.<br />
<br />
Thank you for this wonderful community who preserves RPG maker games and their abilities to share your work with the audiance and new generations]]></description>
			<content:encoded><![CDATA[Hello guys, I am new here and I hope I am doing this right, I am a proud user of RPG Maker XP and I have passion to make games and projects using it and modifying it specifically for the above unusual experience.<br />
<br />
I have made some games prior but most of them where just small projects or demos unfinished.<br />
<br />
Thank you for this wonderful community who preserves RPG maker games and their abilities to share your work with the audiance and new generations]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[The Weekly Gazette 5-03-2026]]></title>
			<link>https://www.save-point.org/thread-13472.html</link>
			<pubDate>Mon, 04 May 2026 04:00:07 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=5">DerVVulfman</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13472.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align">
<img src="https://save-point.org/images/Gazette.png" loading="lazy"  alt="[Image: Gazette.png]" class="mycode_img" /><br />
</div>
<div style="text-align: right;" class="mycode_align">(April 27 to May 3, 2026)<br />
<br />
<a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<br />
Welcome dear readers to the latest issue of the Weekly Gazette!  Here in the Gazette, we give you the news in brief of what occurred in the past week as well as provide any news happening in Save-Point itself<br />
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Official Area</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> General Chat</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> <div style="height: 125px; border:1px solid; padding:4px; margin:1px; overflow:auto;">The conflict in the Middle East continues despite the ceasefire, and the <a href="showthread.php?tid=7628"><span class="highlight">News of the World</span></a> includes new rhetoric from Iran claiming they refuse to give up their nuclear and long-range missile ambitions, and having fired upon a cargo ship east of the Strait of Hormuz demanding tolls of any vessels. That is to say, almost any vessel as a &#36;500 million Russian-owned Superyacht passed through without needing to pay ransom. But while Iran put out a statement that the US is responding to their latest proposal, the United Arab Emerates said not to put any trust in the regime. Meanwhile that not long after the UAE chose to break free from OPEC and its price-setting oil cartel, OPEC suddenly chose to increase oil output. For nearly a year, NATO has been on edge with Moscow continually violating the airspace of their member nations, this time breaching the Romanian border and actively setting off security alarms. Their invasion of Ukraine continues with more drone and missile strikes at civilian targets. And Ukraine's  President Zelenskyy has fears that Belaruz may enter the fray, the long time ally of Russia increasing activity along the border in recent weeks. Of North Korea, Kim Jong Un is issuing the narrative how the 6,000 troops sent to bolster Russia's troops and were killed had instead chose to commit suicide or blow themselves up rather than be captured. More death threats against US President Trump appears just a week since the White House Correspondents Dinner with the Secret Service arresting a man at Trump's Florida golf course, California's vice mayor of Los Altos posted "86 47" on social media, the threat on Trump's life mirroring the content posted by former FBI Director James Comey, and same said Comey now under arrest for more than just the federal felony of threatening the life of a president. The house finally ends the government shutdown, but the battle over Immigration Customs continues despite another savage murder performed by an Salvadorian illegal alien in Long Island and then called the cops. And along with that, the arrest of Chidozie Wilson Okeke, a criminal illegal alien from Nigeria with previous arrests for assault and drugs charges; and the anti-ICE rioters that attacked the hospital where he was taken. Meanwhile, US President Trump sets his sights on offering Americans the same retirement plans that benefit federal employees. And after the Supreme Court ruled that Louisiana's redistricting based on race violated the Voting Rights Act's promise of no racial bias, US President Trump suggested all Republicans see if other states violated the Constitution as well. In Venezuela, US petrolium companies have signed on and began steps to return, revitalizing the nation's oil economy. However, things are far from relaxed with China since Panama revoked China's hold on their ports.  Compared to other ships, Panamanian vessels are seventy percent more likely to be accosted and detained at China state ports, 91 in recent months according to 22 maritime authorities in the Asia-Pacific region. Since then, five countries in Latin America and the Caribbean joined the United States on Tuesday in issuing a joint statement directed towards China. Violence extends outside of Iran as two Jewish men were stabbed in a London Terror attack following a string of anti-semetic incidents in recent weeks. The responsibility for a car bomb outside a Belfast police station has been claimed by the New-IRA, a dissident group which is allegedly linked to both Iran and Hezbollah. And the Austrian man who pledged allegiance to ISIS and plotted the Taylor Swift Vienna concert attack in 2024 pled guilty, he and another facing trial together while a third planned to carry out simultaneous attacks in Saudi Arabia, Turkey and the United Arab Emirates during Ramadan. The attacks on tourists in Nigeria and their relations with the nation of South Africa, the death toll from Columbia's bus bombings rising to 20 amid two dozen attacks in the Cauca region, the lavish and broadcasted lifestyle of Hunter Biden threatening his current child-support settlement, the son of Norwegian diplomats whom received &#36;5 Million from Jeffrey Epstein committing suicide, The democrat with the Nazi-linked tattoo, and the Democrats backing him, the mystery of a recently uncovered ancient Greek Coin stumping archaeologists on how it even arrived in Berlin, the hospitalization of Nobel Peace Prize laureate Narges Mohammadi from prison neglect in Iran, the Chick-fil-A employee and the &#36;80,000 in stolen mac and cheese, and more hit this week's news.</div>
<span style="font-size: x-small;" class="mycode_size"><span style="font-style: italic;" class="mycode_i">Reduced from 26.9K words down to 744</span></span><br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Tech Talk</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> The dangers of Artificial Intelligence hit the <a href="showthread.php?tid=7678"><span class="highlight">News of the Cyber World</span></a> with the report of one that erased a company's entire database while itself stating it violated every principle doing so. But worse than that, a microbiologiest from Stanford University was tasked to conduct tests on AI systems and found one blanketly describing how to created devastating biological weapons and how to disperse such such deadly viruses publically. In the sprawling information age, an absolute government ban on the internet is unthinkable. But in Iran, violating such bans are lethal as one found to be using Starlink internet was beaten and tortured to death. But in a country where  6,500 have been killed and 53,000 arrested for protesting their government, a clandestine network supplying inernet despite the threat of death is welcome.  The Harvard Professor convicted of working for the CCP in 2021 fleeing with US funded resarch to China, Russia's sweeping phishing attack on German officials, the  2.5 metric tons of rare earth minerals discovered in the US East Coast, and more hit the Cyber News this week.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Games Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Development Discussion</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Scenes and scapes were prevalent among those who wished to regail others <a href="showthread.php?tid=395"><span class="highlight">What's up while RMing</span></a> as Ace_V revealed a toppled mech of some sort within a desert land. Though using standard RPGMaker tilesets, he added his own touches to give extra sand piles and swirls to the desert scape, some of which covering parts of a fallen metal behemoth.  DerVVulfman continued work upon his Face Sync editor, duplicating mechanics from a prior iteration. Howeve, he realized that he needs to add more conditions to his editor in order to select the animation cell to show when placing a facial feature in place. And once ore has Remi-chan reworked a battle scene for her game, Fantasia, this time having bare claws against the cat and the wolf who has the most haphazardous of plans. And while she was working upon a released video of the battle, she received two more feline characters sprites from Xiie, otherwise known in our forum as Rune.<br />
<br />
The dangers of space can be seen within the <a href="showthread.php?tid=2870"><span class="highlight">Maps and Screenshot thread</span></a> as a stellar object has its wings outstretched for those unexpecting travelers. Remi-chan reveals that it is none too safe on land when a battle against a nuclear nemesis appears, for even the ground itself will give way to hazardous luminescent destruction.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Complete Projects</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Since the release of <a href="showthread.php?tid=7228"><span class="highlight">Rave Heart+</span></a> six weeks ago, Starmage has been blessed with various submissions of fan art. Some base color portraits involving characters, and the occasional manga page for those wondering what could have been.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Material Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Resources Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> 2D Resources</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Not everything comes up smelling like roses.  Not every day are there celebrations or weddings. And this week, the syndicate shows up among the <a href="showthread.php?tid=11336"><span class="highlight">Various RMXP sprites by Ace_V</span></a> looking for their time.  Appearing like some would-be cocaine drug lord in Miami or some Las Vegas hustler, a bald figure with shades, a red tracksuit and chains now makes his appearance. Be forwarned, he is not one in which to trifle.<br />
<br />
</div></div>
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Creativity Section</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Art and Design</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> From Towa City and through the expance of the Jabberwock Island, <a href="showthread.php?tid=8976"><span class="highlight">Starmage's Arts and Training Journey</span></a> continues with fanart from Cheddare's own Danganronpa fangame.  Who is the dashing Senzo Imada  dressed in casual business attire with long blonde haire tied in the back?  But Starmage's voyage left one gaming universe and entered another with she who can wield the power of black holes at whim being her study in picotee.<br />
<br />
In preparation for future work, we are gifted a glimpse within <a href="showthread.php?tid=8230"><span class="highlight">Remi-chan's Neato Arty thread thing!</span></a> at some pencil sketches of three maidens with hair flowing in the breeze. But it takes more than a breeze to move the wooden vessels from teh Age of Sail, another pencilwork for a submission into an upcoming art exhibition.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Filmography</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Often it has been that she's been asked how many characters she had created within her tales. Rather than repeate the same answers over and over again, <a href="showthread.php?tid=8859"><span class="highlight">Remi-chan's Cinematic Theatre</span></a> now contains a video detailing most of her universe's main protagonists and anatagonists for those whom still ask.<br />
<br />
</div></div>
<br />
</div>
<br />
Well, that's it for this week.<br />
<br />
"Now we can go back to focusing on the issues that matter, like where is Biggie and Tupac?" - Barack Obama<br />
<br />
<br />
<div style="background:#eebbff;border:4px ridge purple;color: #222222;padding:2px;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">PROSPECTIVE GAZETEERS!</span><br />
<br />
<span style="font-style: italic;" class="mycode_i">If you are the creator of a thread in Save-Point, you have the option of sending/writing your own entry into the Gazette.  The Gazette accepts write-in announcements (which will be doublechecked).  Likewise, the Gazette would welcome other content such as a comic-strip series, ongoing story arc, or the like.  <br />
<br />
Just PM DerVVulfman with the submissions. Submissions must be in by 10pm EST. </span></div>
<div style="text-align: right;" class="mycode_align"><a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<span style="font-size: x-small;" class="mycode_size">Regularly posted  12am (EST) (between Sunday &amp; Monday) based on U.S. Daylight Savings,<br />
4am Monday (UTC), 10pm Sunday(CST/MDT), 6pm Sunday (HST), 6am Monday (CEST),  2pm Monday (AEST) observing daylight savings<br />
5am Monday (UTC), 11pm Sunday(CST), 6pm Sunday (HST), 7am Monday (CET),  3pm Monday (AEST) Not observing daylight savings</span>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align">
<img src="https://save-point.org/images/Gazette.png" loading="lazy"  alt="[Image: Gazette.png]" class="mycode_img" /><br />
</div>
<div style="text-align: right;" class="mycode_align">(April 27 to May 3, 2026)<br />
<br />
<a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<br />
Welcome dear readers to the latest issue of the Weekly Gazette!  Here in the Gazette, we give you the news in brief of what occurred in the past week as well as provide any news happening in Save-Point itself<br />
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Official Area</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> General Chat</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> <div style="height: 125px; border:1px solid; padding:4px; margin:1px; overflow:auto;">The conflict in the Middle East continues despite the ceasefire, and the <a href="showthread.php?tid=7628"><span class="highlight">News of the World</span></a> includes new rhetoric from Iran claiming they refuse to give up their nuclear and long-range missile ambitions, and having fired upon a cargo ship east of the Strait of Hormuz demanding tolls of any vessels. That is to say, almost any vessel as a &#36;500 million Russian-owned Superyacht passed through without needing to pay ransom. But while Iran put out a statement that the US is responding to their latest proposal, the United Arab Emerates said not to put any trust in the regime. Meanwhile that not long after the UAE chose to break free from OPEC and its price-setting oil cartel, OPEC suddenly chose to increase oil output. For nearly a year, NATO has been on edge with Moscow continually violating the airspace of their member nations, this time breaching the Romanian border and actively setting off security alarms. Their invasion of Ukraine continues with more drone and missile strikes at civilian targets. And Ukraine's  President Zelenskyy has fears that Belaruz may enter the fray, the long time ally of Russia increasing activity along the border in recent weeks. Of North Korea, Kim Jong Un is issuing the narrative how the 6,000 troops sent to bolster Russia's troops and were killed had instead chose to commit suicide or blow themselves up rather than be captured. More death threats against US President Trump appears just a week since the White House Correspondents Dinner with the Secret Service arresting a man at Trump's Florida golf course, California's vice mayor of Los Altos posted "86 47" on social media, the threat on Trump's life mirroring the content posted by former FBI Director James Comey, and same said Comey now under arrest for more than just the federal felony of threatening the life of a president. The house finally ends the government shutdown, but the battle over Immigration Customs continues despite another savage murder performed by an Salvadorian illegal alien in Long Island and then called the cops. And along with that, the arrest of Chidozie Wilson Okeke, a criminal illegal alien from Nigeria with previous arrests for assault and drugs charges; and the anti-ICE rioters that attacked the hospital where he was taken. Meanwhile, US President Trump sets his sights on offering Americans the same retirement plans that benefit federal employees. And after the Supreme Court ruled that Louisiana's redistricting based on race violated the Voting Rights Act's promise of no racial bias, US President Trump suggested all Republicans see if other states violated the Constitution as well. In Venezuela, US petrolium companies have signed on and began steps to return, revitalizing the nation's oil economy. However, things are far from relaxed with China since Panama revoked China's hold on their ports.  Compared to other ships, Panamanian vessels are seventy percent more likely to be accosted and detained at China state ports, 91 in recent months according to 22 maritime authorities in the Asia-Pacific region. Since then, five countries in Latin America and the Caribbean joined the United States on Tuesday in issuing a joint statement directed towards China. Violence extends outside of Iran as two Jewish men were stabbed in a London Terror attack following a string of anti-semetic incidents in recent weeks. The responsibility for a car bomb outside a Belfast police station has been claimed by the New-IRA, a dissident group which is allegedly linked to both Iran and Hezbollah. And the Austrian man who pledged allegiance to ISIS and plotted the Taylor Swift Vienna concert attack in 2024 pled guilty, he and another facing trial together while a third planned to carry out simultaneous attacks in Saudi Arabia, Turkey and the United Arab Emirates during Ramadan. The attacks on tourists in Nigeria and their relations with the nation of South Africa, the death toll from Columbia's bus bombings rising to 20 amid two dozen attacks in the Cauca region, the lavish and broadcasted lifestyle of Hunter Biden threatening his current child-support settlement, the son of Norwegian diplomats whom received &#36;5 Million from Jeffrey Epstein committing suicide, The democrat with the Nazi-linked tattoo, and the Democrats backing him, the mystery of a recently uncovered ancient Greek Coin stumping archaeologists on how it even arrived in Berlin, the hospitalization of Nobel Peace Prize laureate Narges Mohammadi from prison neglect in Iran, the Chick-fil-A employee and the &#36;80,000 in stolen mac and cheese, and more hit this week's news.</div>
<span style="font-size: x-small;" class="mycode_size"><span style="font-style: italic;" class="mycode_i">Reduced from 26.9K words down to 744</span></span><br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Tech Talk</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> The dangers of Artificial Intelligence hit the <a href="showthread.php?tid=7678"><span class="highlight">News of the Cyber World</span></a> with the report of one that erased a company's entire database while itself stating it violated every principle doing so. But worse than that, a microbiologiest from Stanford University was tasked to conduct tests on AI systems and found one blanketly describing how to created devastating biological weapons and how to disperse such such deadly viruses publically. In the sprawling information age, an absolute government ban on the internet is unthinkable. But in Iran, violating such bans are lethal as one found to be using Starlink internet was beaten and tortured to death. But in a country where  6,500 have been killed and 53,000 arrested for protesting their government, a clandestine network supplying inernet despite the threat of death is welcome.  The Harvard Professor convicted of working for the CCP in 2021 fleeing with US funded resarch to China, Russia's sweeping phishing attack on German officials, the  2.5 metric tons of rare earth minerals discovered in the US East Coast, and more hit the Cyber News this week.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Games Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Development Discussion</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Scenes and scapes were prevalent among those who wished to regail others <a href="showthread.php?tid=395"><span class="highlight">What's up while RMing</span></a> as Ace_V revealed a toppled mech of some sort within a desert land. Though using standard RPGMaker tilesets, he added his own touches to give extra sand piles and swirls to the desert scape, some of which covering parts of a fallen metal behemoth.  DerVVulfman continued work upon his Face Sync editor, duplicating mechanics from a prior iteration. Howeve, he realized that he needs to add more conditions to his editor in order to select the animation cell to show when placing a facial feature in place. And once ore has Remi-chan reworked a battle scene for her game, Fantasia, this time having bare claws against the cat and the wolf who has the most haphazardous of plans. And while she was working upon a released video of the battle, she received two more feline characters sprites from Xiie, otherwise known in our forum as Rune.<br />
<br />
The dangers of space can be seen within the <a href="showthread.php?tid=2870"><span class="highlight">Maps and Screenshot thread</span></a> as a stellar object has its wings outstretched for those unexpecting travelers. Remi-chan reveals that it is none too safe on land when a battle against a nuclear nemesis appears, for even the ground itself will give way to hazardous luminescent destruction.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Complete Projects</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Since the release of <a href="showthread.php?tid=7228"><span class="highlight">Rave Heart+</span></a> six weeks ago, Starmage has been blessed with various submissions of fan art. Some base color portraits involving characters, and the occasional manga page for those wondering what could have been.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Material Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Resources Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> 2D Resources</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Not everything comes up smelling like roses.  Not every day are there celebrations or weddings. And this week, the syndicate shows up among the <a href="showthread.php?tid=11336"><span class="highlight">Various RMXP sprites by Ace_V</span></a> looking for their time.  Appearing like some would-be cocaine drug lord in Miami or some Las Vegas hustler, a bald figure with shades, a red tracksuit and chains now makes his appearance. Be forwarned, he is not one in which to trifle.<br />
<br />
</div></div>
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Creativity Section</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Art and Design</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> From Towa City and through the expance of the Jabberwock Island, <a href="showthread.php?tid=8976"><span class="highlight">Starmage's Arts and Training Journey</span></a> continues with fanart from Cheddare's own Danganronpa fangame.  Who is the dashing Senzo Imada  dressed in casual business attire with long blonde haire tied in the back?  But Starmage's voyage left one gaming universe and entered another with she who can wield the power of black holes at whim being her study in picotee.<br />
<br />
In preparation for future work, we are gifted a glimpse within <a href="showthread.php?tid=8230"><span class="highlight">Remi-chan's Neato Arty thread thing!</span></a> at some pencil sketches of three maidens with hair flowing in the breeze. But it takes more than a breeze to move the wooden vessels from teh Age of Sail, another pencilwork for a submission into an upcoming art exhibition.<br />
<br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Filmography</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Often it has been that she's been asked how many characters she had created within her tales. Rather than repeate the same answers over and over again, <a href="showthread.php?tid=8859"><span class="highlight">Remi-chan's Cinematic Theatre</span></a> now contains a video detailing most of her universe's main protagonists and anatagonists for those whom still ask.<br />
<br />
</div></div>
<br />
</div>
<br />
Well, that's it for this week.<br />
<br />
"Now we can go back to focusing on the issues that matter, like where is Biggie and Tupac?" - Barack Obama<br />
<br />
<br />
<div style="background:#eebbff;border:4px ridge purple;color: #222222;padding:2px;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">PROSPECTIVE GAZETEERS!</span><br />
<br />
<span style="font-style: italic;" class="mycode_i">If you are the creator of a thread in Save-Point, you have the option of sending/writing your own entry into the Gazette.  The Gazette accepts write-in announcements (which will be doublechecked).  Likewise, the Gazette would welcome other content such as a comic-strip series, ongoing story arc, or the like.  <br />
<br />
Just PM DerVVulfman with the submissions. Submissions must be in by 10pm EST. </span></div>
<div style="text-align: right;" class="mycode_align"><a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<span style="font-size: x-small;" class="mycode_size">Regularly posted  12am (EST) (between Sunday &amp; Monday) based on U.S. Daylight Savings,<br />
4am Monday (UTC), 10pm Sunday(CST/MDT), 6pm Sunday (HST), 6am Monday (CEST),  2pm Monday (AEST) observing daylight savings<br />
5am Monday (UTC), 11pm Sunday(CST), 6pm Sunday (HST), 7am Monday (CET),  3pm Monday (AEST) Not observing daylight savings</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[The Weekly Gazette 4-26-2026]]></title>
			<link>https://www.save-point.org/thread-13464.html</link>
			<pubDate>Mon, 27 Apr 2026 04:00:00 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://www.save-point.org/member.php?action=profile&uid=5">DerVVulfman</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.save-point.org/thread-13464.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align">
<img src="https://save-point.org/images/Gazette.png" loading="lazy"  alt="[Image: Gazette.png]" class="mycode_img" /><br />
</div>
<div style="text-align: right;" class="mycode_align">(April 20 to April 26, 2026)<br />
<br />
<a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<br />
Welcome dear readers to the latest issue of the Weekly Gazette!  Here in the Gazette, we give you the news in brief of what occurred in the past week as well as provide any news happening in Save-Point itself<br />
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Official Area</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> General Chat</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> <div style="height: 150px; border:1px solid; padding:4px; margin:1px; overflow:auto;">The shocking third assassination attempt on US President Trump hit the <a href="showthread.php?tid=7628"><span class="highlight">News of the World</span></a> this week, the would-be killer who labeled himself "The Friendly Federal Assassin" teken into custody after firing multiple rounds before fleeing. From California, gunman Cole Allen flooded social media with rhetoric targeting the US President and roughly all members of the administration. Not the only shootings to take place, there were the two gunment involved in the shooting near Indiana Universary, the ex-Cop plotting to kill black people in Louisiana, the Virginian transgender substitute teacher plotting a schoolyard murder spree and bragging about it online, and the revelation of singer D4vd's murder of 14-year-old Celeste Rivas. And in US politics, the Justice Department filed an 11-count indictment against the outspoken Southern Poverty Law Center for paying hate groups &#36;3 Million to stoke racial hatred. Florida Governor Ron DeSantis challenges Democratic House Minority Leader Hakeem Jeffries to try and go after their state redistricting after Virginia's Governor Spanberger works to strip all but one district from Republicans. And two months after House Oversight Committee Chair James Comer demanded answers following her reported massive wealth discrepencies the California winery owned by Representative Ilhan Omar's husband was shut down. Regarding the conflict in the middle east, Iran initially refused to attend a second round of talks. For US President Trump, there was no rush on his part as he knew that the blockade would soon cripple their oil production itself. And of the one ship attempted to run the blockade that was seized by the US, it was found to have ties to China as a long-time oil transport. And after Iran fired upon three ships in the Strait of Hormuz, the US captured three more sanctioned Iranian oil tankers, this time in Asian waters. As an apparent result, Iran's top negotiator arrived back in Pakistan for talks. Not to be dismissed is the Russian Assault on Ukraine, and the recent bombing run with dozens of missiles and over 400 Iranian designed Shahed-type killer drones targeted civilian populations once more. And once more, Russian bombers skated NATO airspace. But in response, France, Sweden, Finland, Poland, Denmark and Romania, fighters flew to identify and monitor the situation. Meanwhile, Ukraine used lethal drone technology to eliminate the latest incursion of Russian Troops, this time on horseback. Different from last week's use of motorcycles, the drone operators felt really sorry for the horses. And while the European Union finally approved a long-awaited &#36;105 billion loan to Kyiv, Prince Harry, though stripped of his title as Royal highness, called on the United States to do the same. In Mexico, the week began with a gunman shooting tourists at the Teotihuacán pyramids, killing one Canadian tourist and wounding six others before shooting himself. The shooting itself took place on the anniversary of Columbine shooting and on the birthday of Adolf Hitler. And from reports, the Hitler-obsessed gunman, Julio César Jasso, planned the massacre for 2 months in an attempt to recreate the gory rituals of the ancient people who built it nearly 2,000 years ago. Meanwhile, a car crash killed two Mexican officials and two US Embassy officials, however it ws found the two US officials were working for the CIA and alongside Mexican authorities to crack down on narcotics and just raided the largest drug laboratory in the state of Chihuahua. In response, Mexico's President Claudia Sheinbaum denied knowledge of any collaboration between Chihuahua and the US. This while the Director of Chihuahua’s State Investigation Agency sent his condolences for the the tragic loss of two US Embassy personnel. In the UK, a former high-school teather is on trial for the rape and subsequent murder of the a boy just over a year old he and his partner were in the process of adopting. Two teenage men, ages 19 and 17, were arrested in relation to the attack on the Kenton United Synagogue.  This brings it up to 15 arrests related to six attacks on Jewish targets and a Persian-language media organization critical of Iran’s government. Meanwhile a cadet was suspended from the Royal Air Force for commenting during a question-and-answer session that Islam was the greatest threat to the UK. This despite being in a training course which required presentations including what they perceived as the biggest threat. Retired rear admiral Chris Parry, who has been critical of the RAF over shutting down critical thinking of new recruits, himself stated its not Islam but the violent extremist elements. Senator John Fetterman blasting his fellow Democrats for appearing to be pro-Iranian sympathizers, Japan scrapping a long-standing ban on weapon exports infuriating China who itself has been aggressively making its own presence felt in the region, the glamorous Iranian business woman arrested at LAX after discovery she was an illegal arms seller, the arrest of a Nigerian Migrant for cooking a cat at a children’s playground in Italy, the monster who raped and impregnated stepdaughter denied parole despite Gavin Newsom's elderly parole law making him eligible, The discovery of Homer's "The Iliad" in the belly of a 1,600 year old Egyptian mummy, the growing list of deaths or disappearances of U.S. experts in advanced space, defense and nuclear fields in recent years, the recovery and return of a priceless ancient Romanian Helmet stolen while on loan at a Dutch museum last year, and more hit this week's news.</div>
<span style="font-size: x-small;" class="mycode_size"><span style="font-style: italic;" class="mycode_i">Reduced from 26.3K words down to 895</span></span><br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Tech Talk</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Big tech cutting their human workforce for AI hit the <a href="showthread.php?tid=7678"><span class="highlight">News of the Cyber World</span></a> this week as Meta plans to give out 8,000 severence packages while Microsoft begins its first voluntary employee buyout in its half-century long history. Elon Musk may have some financial hurdles to overcome with its upcoming release of the CyberTaxi. But he probably found the news that Jeff Bezos's Blue Origin space tech company unable to place a customer's satelite into the correct orbit refreshing. And when the news broke out that Anthropic was releasing its ClaudeAI, a team that cracks unreleased AI models had already breached their security and acquired a copy. The google update the is killing android phone batteries, the price drop in XBox Pass and more hit the cyber news this week.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Games Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Development Discussion</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> The continuous job of creating an editor appear to be <a href="showthread.php?tid=395"><span class="highlight">What's up with a fellow RMers</span></a> named DerVVulfman. Early in the week, he supplied a screen capture of his editor's updated graphics page with a sample image in the editor window. At the same time, he said he was going back and forth between various parts of the editor as it dawned that new loaded file content was required. However, that may have been solved as he later returned with an uploaded mp4 file.  Upon downloading, you can see that he added the ability to cycle between loaded character porraits, and a rudimentary color changing option to the editor window which works with those same portraits.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Material Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Scripts Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> RPGMaker XP (RGSS) Engine</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> For those who have been following the development of  DerVVulfman's <a href="showthread.php?tid=12470"><span class="highlight">Windows Widgets!</span></a>, a package that can let on create interfaces similar in appearance to Windows Applications, more updates have been made.  The Image displaying widget now offers more options to change the underlying background. And the list system now had both safeguards and bar scrolling options for those changing what the index position within a list may be. Meanwhile, it appears he has plans for another object for use, and renamed some content for that possibility.<br />
<br />
</div></div>
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Resources Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> 2D Resources</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Why is it that the only traveling saleperson within the RPGMaker XP RTP appears as but a man with a backpack and a purple cap?  There is little equality present, and no woman playing the trade. So for those who feel the need is present, the <a href="showthread.php?tid=11336"><span class="highlight">Various RMXP sprites by Ace_V</span></a> now corrects that oversight with the latest character stepping up. Bent over from both age and burden, she is the orange-shawl wearing grandmother character (122-Civilian22) whom decided to give up baking cookies for the roads outside the town and the travelers she may barter with along the way. What does she sell?  Trinkets along the way, food for the weary, or juicy gossip or vague histories that only the elderly may recall?  The choice is yours.<br />
<br />
</div></div>
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Creativity Section</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Art and Design</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> The museum of art within the forum was gifted another work for display.  However, the curator was confused at first when the request was for a frame suited more for landscapes than poitrait which is normally her wont. And upon viewing what was to be added within the gallery for <a href="showthread.php?tid=8230"><span class="highlight">Remi-chan's Neato Arty thread thing</span></a>, portraits were expected. However, what is showcased this week is that of a single maiden couched in the art of homicide, two aspects of the same lithe and lethal form. Brandishing her sentient and murderous Crowsythe, Berk, this wispy teen appears in a side-by-side depiction of her relentless ghost form of gold, and her bloodthirsty ravenhaired appearance in raisin and wine. A longer work than normal, not for replication of young Mira, but to re-address different styles of garb, it took thirteen hours to complete. However, you can watch a new speed-draw of her effort compressed to a mere twenty minutes.<br />
<br />
</div></div>
<br />
</div>
<br />
Well, that's it for this week.<br />
<br />
(Regarding Basketball) "We have a great bunch of outside shooters. Unfortunately, all our games are played indoors." - Weldon Drew (1935-2012)<br />
<br />
<br />
<div style="background:#eebbff;border:4px ridge purple;color: #222222;padding:2px;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">PROSPECTIVE GAZETEERS!</span><br />
<br />
<span style="font-style: italic;" class="mycode_i">If you are the creator of a thread in Save-Point, you have the option of sending/writing your own entry into the Gazette.  The Gazette accepts write-in announcements (which will be doublechecked).  Likewise, the Gazette would welcome other content such as a comic-strip series, ongoing story arc, or the like.  <br />
<br />
Just PM DerVVulfman with the submissions. Submissions must be in by 10pm EST. </span></div>
<div style="text-align: right;" class="mycode_align"><a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<span style="font-size: x-small;" class="mycode_size">Regularly posted  12am (EST) (between Sunday &amp; Monday) based on U.S. Daylight Savings,<br />
4am Monday (UTC), 10pm Sunday(CST/MDT), 6pm Sunday (HST), 6am Monday (CEST),  2pm Monday (AEST) observing daylight savings<br />
5am Monday (UTC), 11pm Sunday(CST), 6pm Sunday (HST), 7am Monday (CET),  3pm Monday (AEST) Not observing daylight savings</span>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align">
<img src="https://save-point.org/images/Gazette.png" loading="lazy"  alt="[Image: Gazette.png]" class="mycode_img" /><br />
</div>
<div style="text-align: right;" class="mycode_align">(April 20 to April 26, 2026)<br />
<br />
<a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<br />
Welcome dear readers to the latest issue of the Weekly Gazette!  Here in the Gazette, we give you the news in brief of what occurred in the past week as well as provide any news happening in Save-Point itself<br />
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Official Area</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> General Chat</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> <div style="height: 150px; border:1px solid; padding:4px; margin:1px; overflow:auto;">The shocking third assassination attempt on US President Trump hit the <a href="showthread.php?tid=7628"><span class="highlight">News of the World</span></a> this week, the would-be killer who labeled himself "The Friendly Federal Assassin" teken into custody after firing multiple rounds before fleeing. From California, gunman Cole Allen flooded social media with rhetoric targeting the US President and roughly all members of the administration. Not the only shootings to take place, there were the two gunment involved in the shooting near Indiana Universary, the ex-Cop plotting to kill black people in Louisiana, the Virginian transgender substitute teacher plotting a schoolyard murder spree and bragging about it online, and the revelation of singer D4vd's murder of 14-year-old Celeste Rivas. And in US politics, the Justice Department filed an 11-count indictment against the outspoken Southern Poverty Law Center for paying hate groups &#36;3 Million to stoke racial hatred. Florida Governor Ron DeSantis challenges Democratic House Minority Leader Hakeem Jeffries to try and go after their state redistricting after Virginia's Governor Spanberger works to strip all but one district from Republicans. And two months after House Oversight Committee Chair James Comer demanded answers following her reported massive wealth discrepencies the California winery owned by Representative Ilhan Omar's husband was shut down. Regarding the conflict in the middle east, Iran initially refused to attend a second round of talks. For US President Trump, there was no rush on his part as he knew that the blockade would soon cripple their oil production itself. And of the one ship attempted to run the blockade that was seized by the US, it was found to have ties to China as a long-time oil transport. And after Iran fired upon three ships in the Strait of Hormuz, the US captured three more sanctioned Iranian oil tankers, this time in Asian waters. As an apparent result, Iran's top negotiator arrived back in Pakistan for talks. Not to be dismissed is the Russian Assault on Ukraine, and the recent bombing run with dozens of missiles and over 400 Iranian designed Shahed-type killer drones targeted civilian populations once more. And once more, Russian bombers skated NATO airspace. But in response, France, Sweden, Finland, Poland, Denmark and Romania, fighters flew to identify and monitor the situation. Meanwhile, Ukraine used lethal drone technology to eliminate the latest incursion of Russian Troops, this time on horseback. Different from last week's use of motorcycles, the drone operators felt really sorry for the horses. And while the European Union finally approved a long-awaited &#36;105 billion loan to Kyiv, Prince Harry, though stripped of his title as Royal highness, called on the United States to do the same. In Mexico, the week began with a gunman shooting tourists at the Teotihuacán pyramids, killing one Canadian tourist and wounding six others before shooting himself. The shooting itself took place on the anniversary of Columbine shooting and on the birthday of Adolf Hitler. And from reports, the Hitler-obsessed gunman, Julio César Jasso, planned the massacre for 2 months in an attempt to recreate the gory rituals of the ancient people who built it nearly 2,000 years ago. Meanwhile, a car crash killed two Mexican officials and two US Embassy officials, however it ws found the two US officials were working for the CIA and alongside Mexican authorities to crack down on narcotics and just raided the largest drug laboratory in the state of Chihuahua. In response, Mexico's President Claudia Sheinbaum denied knowledge of any collaboration between Chihuahua and the US. This while the Director of Chihuahua’s State Investigation Agency sent his condolences for the the tragic loss of two US Embassy personnel. In the UK, a former high-school teather is on trial for the rape and subsequent murder of the a boy just over a year old he and his partner were in the process of adopting. Two teenage men, ages 19 and 17, were arrested in relation to the attack on the Kenton United Synagogue.  This brings it up to 15 arrests related to six attacks on Jewish targets and a Persian-language media organization critical of Iran’s government. Meanwhile a cadet was suspended from the Royal Air Force for commenting during a question-and-answer session that Islam was the greatest threat to the UK. This despite being in a training course which required presentations including what they perceived as the biggest threat. Retired rear admiral Chris Parry, who has been critical of the RAF over shutting down critical thinking of new recruits, himself stated its not Islam but the violent extremist elements. Senator John Fetterman blasting his fellow Democrats for appearing to be pro-Iranian sympathizers, Japan scrapping a long-standing ban on weapon exports infuriating China who itself has been aggressively making its own presence felt in the region, the glamorous Iranian business woman arrested at LAX after discovery she was an illegal arms seller, the arrest of a Nigerian Migrant for cooking a cat at a children’s playground in Italy, the monster who raped and impregnated stepdaughter denied parole despite Gavin Newsom's elderly parole law making him eligible, The discovery of Homer's "The Iliad" in the belly of a 1,600 year old Egyptian mummy, the growing list of deaths or disappearances of U.S. experts in advanced space, defense and nuclear fields in recent years, the recovery and return of a priceless ancient Romanian Helmet stolen while on loan at a Dutch museum last year, and more hit this week's news.</div>
<span style="font-size: x-small;" class="mycode_size"><span style="font-style: italic;" class="mycode_i">Reduced from 26.3K words down to 895</span></span><br />
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Tech Talk</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Big tech cutting their human workforce for AI hit the <a href="showthread.php?tid=7678"><span class="highlight">News of the Cyber World</span></a> this week as Meta plans to give out 8,000 severence packages while Microsoft begins its first voluntary employee buyout in its half-century long history. Elon Musk may have some financial hurdles to overcome with its upcoming release of the CyberTaxi. But he probably found the news that Jeff Bezos's Blue Origin space tech company unable to place a customer's satelite into the correct orbit refreshing. And when the news broke out that Anthropic was releasing its ClaudeAI, a team that cracks unreleased AI models had already breached their security and acquired a copy. The google update the is killing android phone batteries, the price drop in XBox Pass and more hit the cyber news this week.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Games Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Development Discussion</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> The continuous job of creating an editor appear to be <a href="showthread.php?tid=395"><span class="highlight">What's up with a fellow RMers</span></a> named DerVVulfman. Early in the week, he supplied a screen capture of his editor's updated graphics page with a sample image in the editor window. At the same time, he said he was going back and forth between various parts of the editor as it dawned that new loaded file content was required. However, that may have been solved as he later returned with an uploaded mp4 file.  Upon downloading, you can see that he added the ability to cycle between loaded character porraits, and a rudimentary color changing option to the editor window which works with those same portraits.<br />
<br />
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Material Development</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Scripts Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> RPGMaker XP (RGSS) Engine</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> For those who have been following the development of  DerVVulfman's <a href="showthread.php?tid=12470"><span class="highlight">Windows Widgets!</span></a>, a package that can let on create interfaces similar in appearance to Windows Applications, more updates have been made.  The Image displaying widget now offers more options to change the underlying background. And the list system now had both safeguards and bar scrolling options for those changing what the index position within a list may be. Meanwhile, it appears he has plans for another object for use, and renamed some content for that possibility.<br />
<br />
</div></div>
</div></div>
<br />
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Resources Database</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> 2D Resources</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> Why is it that the only traveling saleperson within the RPGMaker XP RTP appears as but a man with a backpack and a purple cap?  There is little equality present, and no woman playing the trade. So for those who feel the need is present, the <a href="showthread.php?tid=11336"><span class="highlight">Various RMXP sprites by Ace_V</span></a> now corrects that oversight with the latest character stepping up. Bent over from both age and burden, she is the orange-shawl wearing grandmother character (122-Civilian22) whom decided to give up baking cookies for the roads outside the town and the travelers she may barter with along the way. What does she sell?  Trinkets along the way, food for the weary, or juicy gossip or vague histories that only the elderly may recall?  The choice is yours.<br />
<br />
</div></div>
</div></div>
<br />
</div>
<br />
<div style="background: #63B1BC url(images/4/color_blue/body_bg.png) top left repeat; border:4px ridge #001144;padding:2px;position:relative!important;"><div style="text-align: center;" class="mycode_align"><span style="font-family: Impact;" class="mycode_font"><font size="6"><span style="font-weight: bold;" class="mycode_b"> Creativity Section</span></font></span></div></div>
<div style="background: #CDE2DC  url(images/4/color_blue/container_bg.png) top left repeat; border:2px solid #000000;color: #000000;padding:4px;;position:relative!important;">
<div style="background:#036492 url(images/4/color_blue/thead_bg.png) left repeat;border:2px outset #001122;color: #FFFFFF;-moz-border-radius: 6px; -webkit-border-radius: 6px; padding:2px;position:relative!important;"><font size="4">  <span style="font-weight: bold;" class="mycode_b"> Art and Design</span></font></div>
<div style="background:#EEF9F9;border:2px outset #001122;color: #000000;-moz-border-radius: 6px; -webkit-border-radius: 6px;margin-left: 40px; padding:6px;position:relative!important;"><div style="text-align: justify;" class="mycode_align"> The museum of art within the forum was gifted another work for display.  However, the curator was confused at first when the request was for a frame suited more for landscapes than poitrait which is normally her wont. And upon viewing what was to be added within the gallery for <a href="showthread.php?tid=8230"><span class="highlight">Remi-chan's Neato Arty thread thing</span></a>, portraits were expected. However, what is showcased this week is that of a single maiden couched in the art of homicide, two aspects of the same lithe and lethal form. Brandishing her sentient and murderous Crowsythe, Berk, this wispy teen appears in a side-by-side depiction of her relentless ghost form of gold, and her bloodthirsty ravenhaired appearance in raisin and wine. A longer work than normal, not for replication of young Mira, but to re-address different styles of garb, it took thirteen hours to complete. However, you can watch a new speed-draw of her effort compressed to a mere twenty minutes.<br />
<br />
</div></div>
<br />
</div>
<br />
Well, that's it for this week.<br />
<br />
(Regarding Basketball) "We have a great bunch of outside shooters. Unfortunately, all our games are played indoors." - Weldon Drew (1935-2012)<br />
<br />
<br />
<div style="background:#eebbff;border:4px ridge purple;color: #222222;padding:2px;position:relative!important;"><span style="font-weight: bold;" class="mycode_b">PROSPECTIVE GAZETEERS!</span><br />
<br />
<span style="font-style: italic;" class="mycode_i">If you are the creator of a thread in Save-Point, you have the option of sending/writing your own entry into the Gazette.  The Gazette accepts write-in announcements (which will be doublechecked).  Likewise, the Gazette would welcome other content such as a comic-strip series, ongoing story arc, or the like.  <br />
<br />
Just PM DerVVulfman with the submissions. Submissions must be in by 10pm EST. </span></div>
<div style="text-align: right;" class="mycode_align"><a href="https://www.save-point.org/misc.php?action=help&amp;hid=11" target="_blank" rel="noopener" class="mycode_url"><img src="https://www.save-point.org/images/Kofi/KoFi_Support.png" loading="lazy"  alt="[Image: KoFi_Support.png]" class="mycode_img" /></a></div>
<span style="font-size: x-small;" class="mycode_size">Regularly posted  12am (EST) (between Sunday &amp; Monday) based on U.S. Daylight Savings,<br />
4am Monday (UTC), 10pm Sunday(CST/MDT), 6pm Sunday (HST), 6am Monday (CEST),  2pm Monday (AEST) observing daylight savings<br />
5am Monday (UTC), 11pm Sunday(CST), 6pm Sunday (HST), 7am Monday (CET),  3pm Monday (AEST) Not observing daylight savings</span>]]></content:encoded>
		</item>
	</channel>
</rss>