CloudSixteen / Clockwork

A roleplaying framework developed by Cloud Sixteen for the people.
http://CloudSixteen.com
MIT License
45 stars 43 forks source link

Map support #25

Closed 221boy221 closed 11 years ago

221boy221 commented 11 years ago

I am creating the map called City 17, It's being created for/based on the Half Life 2 RP scheme, I bet you've seen the topic on the forum already. I've created a weapon stripper in it that strips the player from all his weapons and make the weapon's world models fly around and dissolve. But it comes with some problems... It currently targets every player, combine, citizens and what so ever. It doesn't have a way to check if the player is on team 1 or team 2 if you know what I mean. There is a way to make the weapon stripper skip the players that have a certain Targetname, for example: Targetname Combine. Everyone with the Targetname Combine will not trigger the weapon stripper, everyone who doesn't have combine as targetname does. Now I can make a button that does "On pressed>!activator (The player who pressed the button)>SetOutput: Targetname Combine" This makes the player get the targetname combine, but I was wondering...

Is there a way that you could code this into your scheme? It would be very helpful if there was something in clockwork/hl2rp that gives the whitelisted character the targetname of their class, for example something like: on character select if playeriscombine then AddOutput targetname combine so the weapon stripper (Or basically any trigger or map event coded for this kind of separation between targetnames) will not target these characters anymore, this could be useful for more things in the map and could help out a lot for other map creators as well. It would help Clockwork grow when more maps are being created for this certain gamemode and if this will work/if you are able to support map creators then a lot more maps will be based on this gamemode and have a lot of cool dynamic interactions / scripted things that work on the said classes/factions, ending up in Clockwork getting more popular, getting more epic maps to play on and earning more money. Info about the AddOutput output: https://developer.valvesoftware.com/wiki/AddOutput Info about the Targetname: https://developer.valvesoftware.com/wiki/Targetname

I am not a coder myself but I tried a few things already, they didn't work but here is what I tried: http://forums.cloudsixteen.com/index.php?topic=687.75

And, writing this in console also works: ent_fire !player AddOutput "Targetname Combine"

Sincerely, Boy Voesten / 221boy221 Steam: Kill22pro

kurozael commented 11 years ago

Hi there,

thanks for reporting this suggestion. I'll look into getting this added for 0.89.

kurozael commented 11 years ago

Okay, this is kind of now in place (with the latest commit.) A player's targetname will be set to their faction. So, for example, "Metropolice Force" or "Overwatch Transhuman Arm", or "Citizen".

Is it possible for you to do wildcard searches with mapping, so I could set targetnames to be more descriptive?

For instance, if a targetname was: "f:Metropolice Force; c:Scanner, a:abcdefgh" where a: represents their flags, c: their class, and f: their faction?

221boy221 commented 11 years ago

It can filter on models, classname, name (targetname) and teams (for example: Terrorist/Counter-Terrorist).

I don't know what the classname does, but maybe there is a way to do like, mpf is team 1, then targetname on class of the unit. If combine team 1, if scanner targetname scanner?

I don't know if Garry's Mod uses the team system at all, but if they do then I bet you could use it in the codes, I can write custom team names/numbers in the map to search/filter for.

(Add me on steam if you want, (so I can explain it some better / quicker) kill22pro.)

221boy221 commented 10 years ago

Got a question regarding this, did you make it so that when the player switches his combine character to a citizen character the targetname will reset back to Citizen?