summaryrefslogblamecommitdiff
path: root/src/map/party.hpp
blob: 91dab1b3bc7688c11d6ce342c466afed841ee695 (plain) (tree)
1
2
3
4
5
6
7
8
9

                 
 
                      
 
                              
 
                   
 



                        
                         
                                         
                                              
 

                                                                           
                                      
                                                                
                                                               
                                               

                                                                      
                                                                     
                  
                                    
                                            
                                                                  
                            

                                                                        
                  
                                                                         
 

                                                      
 

                                                                    
 
                                          
                                                                           
 
                                                                                
 

                                                                         
 
                   
#ifndef PARTY_HPP
#define PARTY_HPP

# include <functional>

# include "../strings/fwd.hpp"

# include "map.hpp"

struct party;
struct map_session_data;
struct block_list;

void do_init_party(void);
struct party *party_search(int party_id);
struct party *party_searchname(PartyName str);

int party_create(dumb_ptr<map_session_data> sd, PartyName name);
void party_created(int account_id, int fail, int party_id, PartyName name);
void party_request_info(int party_id);
int party_invite(dumb_ptr<map_session_data> sd, int account_id);
int party_member_added(int party_id, int account_id, int flag);
int party_leave(dumb_ptr<map_session_data> sd);
int party_removemember(dumb_ptr<map_session_data> sd, int account_id);
int party_member_leaved(int party_id, int account_id, CharName name);
int party_reply_invite(dumb_ptr<map_session_data> sd, int account_id,
        int flag);
int party_recv_noinfo(int party_id);
int party_recv_info(const struct party *sp);
void party_recv_movemap(int party_id, int account_id, MapName map,
        int online, int lv);
int party_broken(int party_id);
int party_optionchanged(int party_id, int account_id, int exp, int item,
        int flag);
int party_changeoption(dumb_ptr<map_session_data> sd, int exp, int item);

int party_send_movemap(dumb_ptr<map_session_data> sd);
int party_send_logout(dumb_ptr<map_session_data> sd);

void party_send_message(dumb_ptr<map_session_data> sd, XString mes);
void party_recv_message(int party_id, int account_id, XString mes);

void party_send_xy_clear(struct party *p);
void party_send_hp_check(dumb_ptr<block_list> bl, int party_id, int *flag);

int party_exp_share(struct party *p, map_local *map, int base_exp, int job_exp);

void party_foreachsamemap(std::function<void(dumb_ptr<block_list>)> func,
        dumb_ptr<map_session_data> sd, int type);

#endif // PARTY_HPP