cahadeyelo Posted November 29, 2016 Group: Members Topic Count: 71 Topics Per Day: 0.02 Content Count: 174 Reputation: 1 Joined: 11/13/14 Last Seen: 14 hours ago Share Posted November 29, 2016 how can i check the total castle count of a guild through codes? Quote Link to comment Share on other sites More sharing options...
0 Haziel Posted November 29, 2016 Group: Content Moderator Topic Count: 22 Topics Per Day: 0.00 Content Count: 639 Reputation: 609 Joined: 11/25/11 Last Seen: March 7 Share Posted November 29, 2016 You can use getcastledata command: *getcastledata("<map name>",<type of data>) *setcastledata "<map name>",<type of data>,<value>; This function returns the castle ownership information for the castle referred to by its map name. Castle information is stored in `guild_castle` SQL table. Types of data correspond to `guild_castle` table columns: 1 - `guild_id` - Guild ID. 2 - `economy` - Castle Economy score. 3 - `defense` - Castle Defense score. 4 - `triggerE` - Number of times the economy was invested in today. 5 - `triggerD` - Number of times the defense was invested in today. 6 - `nextTime` - unused 7 - `payTime` - unused 8 - `createTime` - unused 9 - `visibleC` - Is 1 if a Kafra was hired for this castle, 0 otherwise. 10 - `visibleG0` - Is 1 if the 1st guardian is present (Soldier Guardian) 11 - `visibleG1` - Is 1 if the 2nd guardian is present (Soldier Guardian) 12 - `visibleG2` - Is 1 if the 3rd guardian is present (Soldier Guardian) 13 - `visibleG3` - Is 1 if the 4th guardian is present (Archer Guardian) 14 - `visibleG4` - Is 1 if the 5th guardian is present (Archer Guardian) 15 - `visibleG5` - Is 1 if the 6th guardian is present (Knight Guardian) 16 - `visibleG6` - Is 1 if the 7th guardian is present (Knight Guardian) 17 - `visibleG7` - Is 1 if the 8th guardian is present (Knight Guardian) All types of data have their meaning determined by War of Emperium scripts, with exception of: - `guild_id` that is always considered ID of the guild that owns the castle, - `defense` that is used in Guardians & Emperium HP calculations, - `visibleG` that is always considered to hold guardian presence bits. The 'setcastledata' command will behave identically, but instead of returning values for the specified types of accessible data, it will alter them and cause them to be sent to the char-server for storage. Changing Guild ID or Castle Defense will trigger additional actions, like recalculating guardians' HP. In a Script, set an array with the list of all castles and make a loop checking the ID of the castle owner match the desired Guild check. Quote Link to comment Share on other sites More sharing options...
0 cahadeyelo Posted November 29, 2016 Group: Members Topic Count: 71 Topics Per Day: 0.02 Content Count: 174 Reputation: 1 Joined: 11/13/14 Last Seen: 14 hours ago Author Share Posted November 29, 2016 can you give a simple example of this coz i can't find the rathena wiki on the net Quote Link to comment Share on other sites More sharing options...
0 Haziel Posted November 29, 2016 Group: Content Moderator Topic Count: 22 Topics Per Day: 0.00 Content Count: 639 Reputation: 609 Joined: 11/25/11 Last Seen: March 7 Share Posted November 29, 2016 The Wiki can be found on the upper menu, under Docs > Wiki. Quote Link to comment Share on other sites More sharing options...
0 cahadeyelo Posted November 29, 2016 Group: Members Topic Count: 71 Topics Per Day: 0.02 Content Count: 174 Reputation: 1 Joined: 11/13/14 Last Seen: 14 hours ago Author Share Posted November 29, 2016 here's the codes that i'm making right now if( strcharinfo(0) == getguildmaster( getcastledata( .Map$,1 ) ) ){ getitem 7146,1; i just want to give the guild leader of kriemhild the item 7146 x the total castles they owned... Quote Link to comment Share on other sites More sharing options...
0 Emistry Posted December 9, 2016 Group: Forum Moderator Topic Count: 93 Topics Per Day: 0.02 Content Count: 10018 Reputation: 2370 Joined: 10/28/11 Last Seen: Yesterday at 05:27 AM Share Posted December 9, 2016 mes "Enter Guild Name"; input .@name$; query_sql( "SELECT `guild_id` FROM `guild` WHERE `name` LIKE '"+escape_sql( .@name$ )+"' LIMIT 1",.@gid ); if ( .@gid ) { query_sql( "SELECT COUNT(`castle_id`) FROM `guild_castle` WHERE `guild_id` = "+.@gid, .@total_castle ); mes "Guild: "+.@name$; mes "Owned "+.@total_castle+" Castle(s)"; } else { mes "Guild '"+.@name$+"' not found."; } close; you can try this. Quote Link to comment Share on other sites More sharing options...
Question
cahadeyelo
how can i check the total castle count of a guild through codes?
Link to comment
Share on other sites
5 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.