-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add dirty flag and integrate #1725
base: master
Are you sure you want to change the base?
Conversation
A few questions I have for this: Also, would it be good practice to include non-time based overrides for Lastly, how do I run with debugging using Visual Studio Code? I make changes to a file and run, but it ignores my breakpoints. |
Where would you need to pass the clock? You very likely only need to pass the time value but the clock is not necessary IMO.
That would kind of counteract introducing dirty flags, so I'm not sure if this is a good idea. In fact, I'm not really sure why we should just always pass a time. Initialization does not always happen at time zero.
It should just work out of the box. What is your start configuration and output? |
Co-authored-by: Christoph Heine <6852422+heinezen@users.noreply.github.com>
Perhaps that's a better question. How to get the time (or any time) into the Map subsystem. |
Co-authored-by: Christoph Heine <6852422+heinezen@users.noreply.github.com>
The update time comes from events in the event system that will trigger a map update. However, I wouldn't worry about that right now, since it is not implemented yet. |
If you are talking about the configurations in launch.json, it says: That's probably my problem lol. What should it say? |
Something like this should work as a configuration:
|
So to clarify, I should put this in launch.json? I am used to Visual Studio with C#. |
You should put it in the |
[workspace]/bin/run does not exist |
Well, you need to build the project before running :D |
https://github.com/SFTtech/openage/blob/master/doc/building.md has info on the build procedure. |
if (evict_cache) { | ||
this->field_cache->evict(cache_key); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The integrate function does not pass in the cost field. I am going to remove the dirty check from the integrate function for now, unless we want to add dirty flags to the integration fields as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
integrate
receives const std::shared_ptr<CostField> &cost_field
as its first argument, so you should be able to use it for checking whether the field is dirty.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sorry, I meant build
I can't seem to get this process working on windows. I can run using python openage, following the info on this page: But I don't see a bin folder built in openage following the Windows instructions. |
I can walk you through it at matrix if you want |
libopenage/pathfinding/cost_field.h
Outdated
inline void set_cost(size_t idx, cost_t cost, const time::time_t &until) { | ||
cells[idx] = cost; | ||
valid_until = until; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This method should be documented.
Co-authored-by: Christoph Heine <6852422+heinezen@users.noreply.github.com>
fixes #1679. First time working with c++. Been struggling to update a test and getting it to build. Any advice will be helpful. I am using Visual Studio Code.
Please offer much critique. Complain with vigor. Correct with fervor.