[No] GetStatSize() (ZScript)

Moderator: GZDoom Developers

GetStatSize() (ZScript)

Postby Major Cooke » Sat Jun 02, 2018 1:52 pm

Simple. A static function that returns the size of a specified stat. If left empty or is some invalid number, defaults to maximum stat + 1 which means it gets the size combined of all stats.
User avatar
Major Cooke
d = klabs(wall[wall[wall[sector[dasect].wallptr].point2].point2].x-s->x)...
 
Joined: 28 Jan 2007

Re: GetStatSize() (ZScript)

Postby Marisa Kirisame » Sat Jun 02, 2018 4:37 pm

What do you mean by "size of a stat"?
User avatar
Marisa Kirisame
ZScript Crimester
 
 
 
Joined: 08 Feb 2008
Location: Vigo, Galicia
Discord: 霧雨魔理沙#1666
Twitch ID: magusmarisa
Github ID: OrdinaryMagician
Operating System: Other Linux 64-bit
OS Test Version: No (Using Stable Public Version)
Graphics Processor: nVidia with Vulkan support

Re: GetStatSize() (ZScript)

Postby Major Cooke » Sat Jun 02, 2018 10:35 pm

How many active thinkers are in a particular stat.

Right now you can only do a while loop until it's all the way over which strikes me as inefficient when just trying to establish how many thinkers are in there -- especially if it's on ZScript's side. Probably much better to have it done on the source if anything, especially if this is done often.
User avatar
Major Cooke
d = klabs(wall[wall[wall[sector[dasect].wallptr].point2].point2].x-s->x)...
 
Joined: 28 Jan 2007

Re: GetStatSize() (ZScript)

Postby ZippeyKeys12 » Fri Sep 14, 2018 3:57 pm

https://github.com/coelckers/gzdoom/pull/574
Let's see if I fucked anything up, or if Graf doesn't want it in. (Or both)
ZippeyKeys12
 
Joined: 15 Jun 2016

Re: GetStatSize() (ZScript)

Postby Major Cooke » Thu Jan 31, 2019 12:00 pm

This was closed.
User avatar
Major Cooke
d = klabs(wall[wall[wall[sector[dasect].wallptr].point2].point2].x-s->x)...
 
Joined: 28 Jan 2007

Re: GetStatSize() (ZScript)

Postby Graf Zahl » Thu Jan 31, 2019 4:56 pm

Major Cooke wrote:especially if this is done often.


You shouldn't do that. If you have to count thinkers in a slot frequently something isn't right. Even natively the engine cannot do anything less than stepping through the entire list and incrementing a counter. This is a very costly operation because it involves several cache misses on the CPU.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
 
Joined: 19 Jul 2003
Location: Germany


Return to Closed Feature Suggestions

Who is online

Users browsing this forum: Semrush [Bot] and 0 guests