1 class Pettanr.CircleSpeechBalloon
\r
3 class Pettanr.CircleSpeechBalloon.SpeechBalloon extends Backbone.Model
\r
4 # OMG... this model is not petanized item
\r
5 # it means that can't change name
\r
7 "circle_speech_balloons"
\r
10 "CircleSpeechBalloon"
\r
13 @base_name() + '/speech_balloon'
\r
16 @base_name() + '/speech_balloons'
\r
19 @baseName() + '/SpeechBalloon'
\r
22 @baseName() + '/SpeechBalloons'
\r
28 @engine_name() + '/speech_balloons'
\r
30 class Pettanr.CircleSpeechBalloon.Balloon extends Backbone.Model
\r
31 # OMG... this model is not petanized item
\r
32 # it means that can't change name
\r
34 "circle_speech_balloons"
\r
37 "CircleSpeechBalloon"
\r
40 @base_name() + '/balloon'
\r
43 @base_name() + '/balloons'
\r
46 @baseName() + '/Balloon'
\r
49 @baseName() + '/Balloons'
\r
55 @engine_name() + '/balloons'
\r
57 class Pettanr.CircleSpeechBalloon.Speech extends Backbone.Model
\r
58 # OMG... this model is not petanized item
\r
59 # it means that can't change name
\r
61 "circle_speech_balloons"
\r
64 "CircleSpeechBalloon"
\r
67 @base_name() + '/speech'
\r
70 @base_name() + '/speeches'
\r
73 @baseName() + '/Speech'
\r
76 @baseName() + '/Speeches'
\r
82 @engine_name() + '/speeches'
\r
84 class Pettanr.CircleSpeechBalloon.SpeechBalloonModule
\r
85 supply_default: (templates) ->
\r
86 @templates = templates
\r
88 speech_balloon_extend: () ->
\r
89 @new_speech_balloon() if not @sbex
\r
92 speech_balloon_extend_setter: (params) ->
\r
94 @sbex = new Pettanr.CircleSpeechBalloon.SpeechBalloon(params)
\r
95 # no supply default params
\r
97 new_speech_balloon: (params = {}) ->
\r
98 @sbex = new Pettanr.CircleSpeechBalloon.SpeechBalloon(params)
\r
99 @sbex.supply_default()
\r
101 class Pettanr.CircleSpeechBalloon.BalloonModule
\r
102 supply_default: (templates) ->
\r
103 @templates = templates
\r
107 width: @parsed_settings()['speech_balloon']['default_width'],
\r
108 eight: @parsed_settings()['speech_balloon']['default_height'],
\r
109 r: @parsed_settings()['speech_balloon']['default_r']
\r
111 @select_system_picture()
\r
113 hoge_templates: () ->
\r
114 if !@templates.speech_balloon_template
\r
115 empty_item = new Pettanr.SpeechBalloonTemplate({id: @get('speech_balloon_template_id')})
\r
116 item = Pettanr.cache.restore(empty_item)
\r
119 @templates.speech_balloon_template = item
\r
123 item.fetch().done =>
\r
124 Pettanr.cache.store(item)
\r
125 @templates.speech_balloon_template = item
\r
127 balloon_extend: () ->
\r
128 @new_balloon() if not @bex
\r
131 balloon_extend_setter: (params) ->
\r
133 @bex = new Pettanr.CircleSpeechBalloon.Balloon(params)
\r
134 # no supply default params
\r
136 new_balloon: (params = {}) ->
\r
137 @bex = new Pettanr.CircleSpeechBalloon.Balloon(params)
\r
138 @bex.supply_default()
\r
140 parsed_settings: () ->
\r
141 return @parsed if @parsed
\r
142 @parsed = @templates.speech_balloon_template.parsed_settings()
\r
144 select_system_picture: () ->
\r
145 idx = @r_to_index(@round_r(@get('r')))
\r
146 sid = @parsed_settings()[Pettanr.to_s(idx)]['balloon']['system_picture_id']
\r
147 @set({system_picture_id: sid}, {silent: true})
\r
151 @parsed_settings()['speech_balloon']['r_step']
\r
156 tr = 360 + tr if tr < 0
\r
159 r_to_index: (round_r) ->
\r
160 # 0 ~ 45 -> 22.5 ~ 66.5
\r
161 offset = @r_step() / 2.0
\r
163 Math.floor(((round_r + offset) % 360) / @r_step())
\r
165 class Pettanr.CircleSpeechBalloon.SpeechModule
\r
166 supply_default: (templates) ->
\r
167 @templates = templates
\r
168 s = @parsed_settings()['0']['speech']
\r
172 width: s['width_rate'],
\r
173 height: s['height_rate'],
\r
175 font_size: @parsed_settings()['speech_balloon']['default_font_size'],
\r
176 text_align: @parsed_settings()['speech_balloon']['default_text_align'],
\r
177 fore_color: @parsed_settings()['speech_balloon']['default_fore_color'],
\r
180 speech_extend: () ->
\r
183 speech_extend_setter: (params) ->
\r
185 @sex = new Pettanr.CircleSpeechBalloon.Speech(params)
\r
186 # no supply default params
\r
188 new_speech: (params = {}) ->
\r
189 @sex = new Pettanr.CircleSpeechBalloon.Speech(params)
\r
190 @sex.supply_default()
\r
192 parsed_settings: () ->
\r
193 return @parsed if @parsed
\r
194 @parsed = @templates.speech_balloon_template.parsed_settings()
\r
196 arrayed_quotes: () ->
\r
197 q = if Pettanr.is_blank(@get('quotes'))
\r
198 Pettanr.to_s(@parsed_settings()['speech_balloon']['quotes'])
\r