I don't see «Find and Replace» menu

1 favourites
  • 6 posts
From the Asset Store
A well commented template with list menus and shops to use in your top-down RPGs or metroidvania games!
  • Greetings! I know I can change one object by another in big tree of events. That is good to create another type of game obj simply copying entire previous sheet.

    Today there was need to change root point position of sprite and to make another sprite point responsible for many calculations.

    Okay, CTRL+F and... 51 results cannot be replaced automatically. Do I need to click on every result and change all distance or another comparison expressions manually?

    Seems I just missed the location of some menu...

    Because, how about 891 results found case to change them all from «object.X» to «object.ImagePointX(2)»?

  • It's very difficult to implement a basic find-and-replace feature for expressions, because you can easily create hundreds of invalid expressions.

    For example suppose you want to find-and-replace to rename a variable "foo" to "bar". But you also have a Sprite object called "football" and it is used in hundreds of places. A simple find-and-replace would also rename all those references to "football" to "bartball", which doesn't exist, and makes all those events invalid.

    Perhaps there could be some kind of "find-and-replace only if the resulting expression remains valid", but there are still lots of ways for that to mess up unexpectedly, e.g. what if there was an object named "bartball"? For this reason, even when coding C3, I rarely use find-and-replace on code - I go through and manually change every reference making sure it's what I really want to update, because a naive text find-and-replace too often goes wrong.

  • How about «Case sensitive» / «Whole word match» replace?

    And why do we need to care about validness of result expression? All invalid expressions Construct already deleting on the fly, I.e. on copy-paste

    Yes of course I can unzip c3p-file and replace manually, but... ))

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • I doubt case sensitive/word matching is not enough to solve the problem.

    Invalid expressions could just be deleted, but since the problem is often the results are unintentional, that would mean what you thought was a simple find and replace actually deletes a bunch of content from your project - an even worse result.

  • Even if I understand the challenges in implementing such a feature, it's still definitely missing in C3.

    This would be really really useful.

    Maybe it needs to have a manual validation of each entry about to be replaced, so that the user understand the implication of the replacement each time (like deleting an action/event), or can even arbitrate on "replacing it or not", and flag it if not replaced.

    I'm sure there is an UX which could be appropriate without being too complicated.

  • Maybe it needs to have a manual validation of each entry about to be replaced, so that the user understand the implication of the replacement each time

    That's already possible: just do a find and go through the results one by one. That's what I would recommend anyway. Automated replacement could totally mess up large parts of your project.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)