- Joined
- Sep 19, 2021
- Messages
- 2
- Reaction score
- 1
- First Language
- Portuguese BR
- Primarily Uses
- RMMZ
damageOffsetX
, damageOffsetY
(from core scripts)Making them defined per popup, so like another parameter option when you created one. If it isn't easy to make them individual it's ok, just thought I'd ask and see.@Jeremyr - currently, Cae_OnUseEffects positions custom popups at:
What sort of change are you wanting? E.g. should the offsets be:
- Base position:
damageOffsetX
,damageOffsetY
(from core scripts)- Shift per visible popup: 8 px ->, <text height> px up (mimics core scripts)
- The same for all battlers?
- Fixed-value, e.g. +20 px, or scripted?
- Defined per popup type, or apply equally to all popups?
In case it helps, I wrote this simple plugin for RMMV...not sure if it'll work in MZ.
It's designed to affect all popups, but has per-battler eval support via notetags.
I have another question in regards to the conditions for the popups. Using VisuStella plugin's, let's say you wanted a popup to appear, after a condition was meet within, <JS Pre-Damage as Target> or <JS Post-Damage as Target>, the popup will not appear until the next attack.@Jeremyr: ah, I don't think I'll add that any time soon. Will keep a note of it as a feature suggestion, though!![]()
Cae_OnUseEffects evaluates the popup conditions immediately before applying the damage to the target (aimed atI have another question in regards to the conditions for the popups. Using VisuStella plugin's, let's say you wanted a popup to appear, after a condition was meet within, <JS Pre-Damage as Target> or <JS Post-Damage as Target>, the popup will not appear until the next attack.
Game_Action#executeDamage
). This is a deliberate design choice in order to offer more information in the conditions, e.g. target HP before receiving damage. So yes, I believe this is the problem:...is there maybe a problem with when, the popup checks the condition before the VisuStella's stuff...
if (target.isStateAffected(52)) {
if (value > 0) {
target.setStateDisplay(52, 1);
return true;
}
}
return false;
I'm not sure if you posted in the correct place. Does the problem occur in a new project with only FOSSIL and YEP_EquipBattleSkills, no other plugins?Hi I'm running into a problem using this plugin with FOSSIL and Yep_EquipBattleSkills , it works until I try equipping a skill slot with no skill. it then returns "Type Error Cannot read property "id" null"
Is there an easy fix for this problem? Thanks as it's an awesome plugin and really enjoyed using it so far!
This information can help to fix the problem faster:
- Instructions stating how to reproduce the problem in a new project.
(If I can't reproduce the problem, I probably can't help you.)- A screenshot of the console when the unexpected behaviour occurs.
(You can open the console by pressing F8 during test-play.)
,
and .
), you can see when the cursor enters and leaves the text (black/opaque) areas of the picture. These seem to correspond to the number of messages shown.◆Text:None, None, Window, Bottom
: :Enter!
◆Plugin Command:Cae_PictureTouch, Enable/Disable Bind
: :Action = Enable
: :Picture ID = 1
: :Trigger = Enter
<subskills:
const s = subject.skills();
const r = [10];
for (const subskillId of [11, 12])
if (s.some(o => o.id === subskillId))
r.push(subskillId);
if (r.length === 1)
return []; // empty
return r;
>
[]
(empty array) if neither of the subskills are available, which should skip the subskill selection. This example assumes the parent skill (Fire) is ID 10
, and the subskills (Purge & Blast) are IDs 11
and 12
; replace these numbers as appropriate~/*:
* @target MZ
* @plugindesc Cae_OnUseEffects patch - if a skill has only itself as a subskill, skip subskill selection.
* @author Caethyril
* @url https://forums.rpgmakerweb.com/threads/125657/
* @help This patch is free to use and/or modify for any project, no credit required.
* @base Cae_OnUseEffects
* @orderAfter Cae_OnUseEffects
*/
void (alias => {
CAE.OnUseEffects.subskill.get = function(skillId, subject) {
const res = alias.apply(this, arguments);
if (res.length === 1 && res[0].id === skillId)
return [];
return res;
};
})(CAE.OnUseEffects.subskill.get);
@Willibab - so you want the subskill selection to appear only if they know Fire Purge and/or Fire Blast, right? If so, I think you could use a scripted tag for that, e.g. (untested):
<subskills: const s = subject.skills(); const r = [10]; for (const subskillId of [11, 12]) if (s.some(o => o.id === subskillId)) r.push(subskillId); if (r.length === 1) return []; // empty return r; >
In theory this will return[]
(empty array) if neither of the subskills are available, which should skip the subskill selection. This example assumes the parent skill (Fire) is ID10
, and the subskills (Purge & Blast) are IDs11
and12
; replace these numbers as appropriate~
Alternatively you could try this little patch to automatically do that for any subskill list that only contains the parent skill (also untested):
JavaScript:/*: * @target MZ * @plugindesc Cae_OnUseEffects patch - if a skill has only itself as a subskill, skip subskill selection. * @author Caethyril * @url https://forums.rpgmakerweb.com/threads/125657/ * @help This patch is free to use and/or modify for any project, no credit required. * @base Cae_OnUseEffects * @orderAfter Cae_OnUseEffects */ void (alias => { CAE.OnUseEffects.subskill.get = function(skillId, subject) { const res = alias.apply(this, arguments); if (res.length === 1 && res[0].id === skillId) return []; return res; }; })(CAE.OnUseEffects.subskill.get);