//! zinc
library t
{
public struct a
{
}
}
library b requires t
{
struct c extends a
{
}
}
//! endzinc
try
The "requires" keyword only sets the order in which the initializers are executed, it doesnt provide visibility.JASS://! zinc library t { public struct a { } } library b requires t { struct c extends a { } } //! endzinc
But do you really wanna learn ZinC? I used it for a while and then came to the conclusion that compared to vJass it lacks compatibility and some features which doesnt legitimate the slightly less verbose syntax... but thats ur choice, just saying
Working fine for me, seems to have all the features that vJass has + it has a syntax closer to Java which is my secondary language so im not constantly swapping between "call" and semicolons
its not learning a new language its just syntax. also, no idea what your talking about with the textmacro stuff, ive written ~2k lines of zinc in a map with ~20k lines of vjass and im not encountering any issuesyea i know the "calls" are annoying, but vJass is the standard (so most libraries and stuff are in vJass) and either a language is compatible to vJass or imo it needs some real advantages over jass that legitimate the lack of compability.
Problems with ZinC:
- vJass libs that are based on textmacros wont work in ZinC, you have to write warppers for everything
- ZinC has no stub classes/structs
If you want to learn a new language it strongly recommend WurstScript, its quite uncommon because it is not officially released yet, but its making great progress and is already extremely comfortable to use. The syntax is similar to Java (much less verbose than vJass) and the functionality covers most aspects of vJass but adds lots of higher level features that make coding in WurstScript so fast and efficient.
http://peq.github.com/WurstScript/manual.html
Read the manual if you are interested, i dont wanna push you into using it but as there are so many unfounded rumors about WurstScript on hive i want you to form your own opinion.
ZinC cant use vJass textmacros, because textmacros basically just copy the code.
//! runtextmacro AIDS()
//! zinc
library AIDSZinc requires AIDS {
...
http://www.thehelper.net/threads/advanced-indexing-data-storage.116539/
JASS://! runtextmacro AIDS()
http://www.thehelper.net/threads/aidszinc.130894/
JASS://! zinc library AIDSZinc requires AIDS { ...
But i agree, this kind of use of textmacros is abuse and a bad (but efficient) style.